&A Better Font Structure00(



=

A Better Font Structure



=The TDS mandates the use of dpi300/cmr10.pk for font@naming syntax as it is the only portable form across present-day>operating systems. Extensions to this recommendation, such asEcmr10.300pk or the use of font library files, may optionallyBbe employed on those systems that support this filename syntax, as<long as the portable form of the filename is also supported.

LThe TWG struggled more with the font directory structure than anything else..The alternative arrangement we considered was:

\texmf/fonts/supplier/typeface/type/

IIn fact, many sites already use this alternative arrangement. (It is the8arrangement suggested by the Web2C distribution.)

GThis arrangement greatly improves the maintainability of the font tree,Fbut, unless all the programs that search this tree employ some form ofGcaching, there are serious performance concerns. For example, in order@to find cmr10.tfm, TeX would potentially have to search:through all the directories that contain pk filesBin all modes and at all resolutions. Clearly, this could make TeX.unusable unless it had some method for ``shortcircuiting'' the search.

GIn the end, a straw poll of developers revealed considerable resistanceHto implementing sufficient caching mechanisms, so this other arrangementAwas abandoned. The arrangement settled on for the TDS allows theCsearch tree to be restricted to the correct type of file, at least.7Concerns about efficiency remain, but there seems to beno more we can do.?

Where Does the Mode Go?



IAnother discussion arose in the effort to determine where the mode should(go. The two alternative contenders were

stexmf/fonts/pk/supplier/typeface/mode/dpi/

and 

stexmf/fonts/pk/mode/dpi/supplier/typeface/

IIn the former case, it isn't easy to limit subdirectory searching to onlyGthe mode required for the particular printer you are using. And in the9latter case, leaving dpiNNN at the bottomEallows that level to be omitted on systems which allow long filenames(e.g., cmr10.300pk).