6.4 `psfonts.map': PostScript font catalog
The `psfonts.map' file associates a PostScript font with related files
and constructs. Each line has the format:
FILENAME POSTSCRIPT-NAME OPTIONS
For example, the line
rpstrn StoneInformal <StoneInformal.pfb
causes Dvips to download `StoneInformal.pfb' (just as if it were a
header file, Note: Header files) if the DVI file (or a virtual font,
Note: Virtual fonts) references the TFM file `rpstrn'. The
PostScript `/FontName' of the font defined inside the `pfb' file should
You can generate transformed fonts with a line like this:
rpstrc StoneInformal <StoneInformal.pfb ".8 ExtendFont"
Note: Special font effects, for a complete list of font effects.
You can change the encoding of the Type 1 font at the PostScript
level with a `ReEncodeFont' instruction, plus the name of the encoding
file. This allows you access to characters that may be present in the
Type 1 font file, but not encoded by default--most of the preaccented
characters, for example. An example:
pstrn8r StoneInformal "TeXBase1Encoding ReEncodeFont" <8r.enc <pstrn8a.pfb
The `8r' encoding mentioned here has been designed to serve as a
base for all downloadable fonts; it allows access to all the characters
commonly present in a Type 1 font. For more details, see the `8r.enc'
source file that comes with (and is installed with) Dvips.
You may notice that the same syntax is used for downloading encoding
vectors and Type 1 font files. To make your intentions clear, you can
also use `<[' to explicitly indicate you are downloading an encoding
vector, as in:
pstrn8r StoneInformal "TeXBase1Encoding ReEncodeFont" <[8r.enc <pstrn8a.pfb
If the filename of your encoding vector does not end in `.enc', and
you are using partial font downloading, you must use the `<[' syntax,
or Dvips will not download the font properly.
Similarly, the name of the Type 1 font file itself must have
extension `.pfa' or `.pfb' for partial downloading to work properly.
When using PFB files, Dvips is smart enough to unpack the binary PFB
format into printable ASCII so there is no need to perform this
conversion yourself. In addition, Dvips scans the font to determine its
memory usage, just as it does for other header files (Note: Header
If the `j' config file or command-line option is enabled (as it is
by default), `StoneInformal.pfb' will be "partially downloaded"--only
those characters your document actually uses will be extracted and
downloaded, and the remainder discarded. Note: Option details.
Adobe Multiple Master fonts, such as Minion, cannot be partially
downloaded. To partially download in general, but avoid partial
downloading for individual fonts, use `<<' instead `<':
pmnr8r Minion <<Minion.pfb
Here is a brief summary of how `psfonts.map' is read:
1. If a line is empty or begins with a space, percent, asterisk,
semicolon, or hash mark, it is ignored.
2. Otherwise, the line is separated into words, where words are
separated by spaces or tabs, except that if a word begins with a
double quote, it extends until the next double quote or the end of
3. If a word starts with `<<', it is taken as a font file to be
wholly downloaded. Use this to avoid partial downloading, as
4. If a word starts with `<[', it is taken as an encoding file to be
downloaded. Use this if the name of the encoding file does end in
`.enc', also as described above.
5. If a word starts with a `<' character, it is treated as a header
file that needs to be downloaded. If the name ends in `.pfa' or
`.pfb', it is taken as Type 1 font file that will be partially
downloaded if the `j' option is in effect. There can be more than
one such header for a given font. If a `<' is a word by itself,
the next word is taken as the name of the header file.
6. If a word starts with a `"' character, it is taken as PostScript
code used in generating that font, and is inserted into the output
verbatim at the appropriate point. (And the double quotes
beginning and ending the word are removed.)
7. Otherwise the word is a name. The first such name is the TFM file,
that either a DVI file or a virtual font file can refer to. If
there is a second name, it is used as the PostScript name and
should match what is defined in the downloaded file; if there is
only one name, it is used for both the TeX name and the PostScript
automatically generated by info2www version 188.8.131.52