           The preload.dtx file^{∗}

for use with L^{A}TEX 2ε

Frank Mittelbach  Rainer Schöpf

1995/12/04

1 Overview

This file contains an number of possible settings for preloading fonts during installation of NFSS2 (which is used by L^{A}TEX 2ε). It will be used to generate the following files:

preload.min minimal subset of fonts necessary to run NFSS2
preload.ori  preload of CM fonts similar to the old lfonts.tex
preload.ltx  The standard selection of preloads
cmpreloa.xpt preload of CM fonts for 10pt document size
cmpreloa.xip preload of CM fonts for 11pt document size
cmpreloa.xii preload of CM fonts for 12pt document size
dcpreloa.xpt preload of DC fonts for 10pt size
dcpreloa.xip preload of DC fonts for 11pt size
dcpreloa.xii preload of DC fonts for 12pt size

These files are for installations that make use of Computer Modern fonts either old encoding (OT1) or Cork encoding (T1). The Computer Modern fonts with Cork encoding are known as DC-fonts.

Most important is preload.ltx which is used during format generation. You are not allowed to change this file.

2 Customization

You can customize the preloaded fonts in your L^{A}TEX 2ε system by installing a file with the name preload.cfg. If this file exists it will be used in place of the system file preload.ltx. You can, for example, copy one of the files mentioned above (that can be generated from this source) to preload.cfg.

Or you can define completely other preloads. In that case start from preload.min since that contains the fonts that have to be preloaded by *all* L^{A}TEX 2ε sytems.

∗This file has version number v2.1f, dated 1995/12/04

Avoid using preload.ori, it will load so many fonts that on most installations it is nearly impossible to load other font families afterwards. This file is only generated to show what fonts have been preloaded by L^{A}TEX 2.09.

If you normally use other fonts than Computer Modern preload.min might be best.

Warning: If you preload fonts with encodings other than the normally supported encodings you have to declare that encoding in a fontdef.cfg configuration file (see the documentation in the file fontdef.dtx). Adding an extra encoding to the format might produce non-portable documents, thus this should be avoided if possible.

3 Module switches for the docstrip program

The docstrip will generate the above file from this source using the following module directives:

driver produce a documentation driver file
preload produce a preload… file
cm  for OT1 encoded Computer Modern
dc  for T1 encoded Computer Modern
min  produce minimal subset
xpt  produce 10pt preloads
xipt  produce 11pt preloads
xiipt  produce 12pt preloads
ori  produce preloads similar to old lfonts.tex
tex  produce preload.ltx

A typical docstrip command file would then have entries like:

\generateFile{preload.min}{t}{\from{preload.dtx}{preload,min}}

for generating preload files.

4 A driver for this document

The next bit of code contains the documentation driver file for TEX, i.e., the file that will produce the documentation you are currently reading. It will be extracted from this file by the docstrip program.

1 ⟨∗driver⟩

 2 \documentclass{ltxdoc}
 3 %\OnlyDescription  % comment out for implementation details
 4 \begin{document}
 5 \DocInput{preload.dtx}
 6 \end{document}

7 ⟨/driver⟩

5 The code

We begin by loading the math extension font (cmex10) and the L^{A}TEX line and circle fonts. It is necessary to do this explicitly since these are used by lplain.tex and latex.tex. Since the internal font name contains / characters and digits we construct the name via \csname. These are the only fonts (!) that must be loaded in this file.

All \DeclarePreloadSizes can be removed or others can be added, they only influence the processing speed.

 8 \expandafter\font\csname OMX/cmex/m/n/10\endcsname=cmex10\relax
 9 \font\tenln  =line10   \font\tenlnw  =linew10\relax
10 \font\tencirc=lcircle10 \font\tencircw=lcirclew10\relax

The above fonts should not be touched but anything below this point here in the preload suggestions can be modified without any problems.

11 ⟨−tex⟩%*******************************************
12 ⟨−tex⟩% Start any modification below this point **
13 ⟨−tex⟩%*******************************************

14 ⟨−tex⟩

15 %%
16 %% Computer Modern Roman:
17 %%-----------------------

18 ⟨∗ori⟩

19 \DeclarePreloadSizes{OT1}{cmr}{m}{n}
20  {5,6,7,8,9,10,10.95,12,14.4,17.28,20.74,24.88}
21 \DeclarePreloadSizes{OT1}{cmr}{bx}{n}{9,10,10.95,12,14.4,17.28}
22 \DeclarePreloadSizes{OT1}{cmr}{m}{sl}{10,10.95,12}
23 \DeclarePreloadSizes{OT1}{cmr}{m}{it}{7,8,9,10,10.95,12}

24 ⟨/ori⟩

25 ⟨+xpt & cm⟩ \DeclarePreloadSizes{OT1}{cmr}{m}{n}{5,7,10}
26 ⟨+xpt & dc⟩ \DeclarePreloadSizes{T1}{cmr}{m}{n}{5,7,10}
27 ⟨+xipt & cm⟩ \DeclarePreloadSizes{OT1}{cmr}{m}{n}{6,8,10.95}
28 ⟨+xipt & dc⟩ \DeclarePreloadSizes{T1}{cmr}{m}{n}{6,8,10.95}
29 ⟨+xiipt & cm⟩ \DeclarePreloadSizes{OT1}{cmr}{m}{n}{6,8,12}
30 ⟨+xiipt & dc⟩ \DeclarePreloadSizes{T1}{cmr}{m}{n}{6,8,12}
31 %%
32 %% Computer Modern Sans:
33 %%----------------------
34 ⟨+ori⟩ \DeclarePreloadSizes{OT1}{cmss}{m}{n}{10,10.95,12}
35 %%
36 %% Computer Modern Typewriter:
37 %%----------------------------
38 ⟨+ori⟩ \DeclarePreloadSizes{OT1}{cmtt}{m}{n}{9,10,10.95,12}
39 %%
40 %% Computer Modern Math:
41 %%----------------------

42 ⟨∗ori⟩

43 \DeclarePreloadSizes{OML}{cmm}{m}{it}
44  {5,6,7,8,9,10,10.95,12,14.4,17.28,20.74}

45 \DeclarePreloadSizes{OMS}{cmsy}{m}{n}
46  {5,6,7,8,9,10,10.95,12,14.4,17.28,20.74}

47 ⟨/ori⟩

The math fonts are the same for both DC and CM fonts. So far there isn’t an agreed on standard.

48 ⟨∗xpt⟩

49 \DeclarePreloadSizes{OML}{cmm}{m}{it}{5,7,10}
50 \DeclarePreloadSizes{OMS}{cmsy}{m}{n}{5,7,10}

51 ⟨/xpt⟩ 52 ⟨∗xipt⟩

53 \DeclarePreloadSizes{OML}{cmm}{m}{it}{6,8,10.95}
54 \DeclarePreloadSizes{OMS}{cmsy}{m}{n}{6,8,10.95}

55 ⟨/xipt⟩ 56 ⟨∗xiipt⟩

57 \DeclarePreloadSizes{OML}{cmm}{m}{it}{6,8,12}
58 \DeclarePreloadSizes{OMS}{cmsy}{m}{n}{6,8,12}

59 ⟨/xiipt⟩

60 %%
61 %% LaTeX symbol fonts:
62 %%--------------------

63 ⟨∗ori⟩

64 \DeclarePreloadSizes{U}{lasy}{m}{n}
65  {5,6,7,8,9,10,10.95,12,14.4,17.28,20.74}

66 ⟨/ori⟩ 67 ⟨/preload⟩