dvips: Special font effects
6.3.2 Special font effects
--------------------------
Besides the reencodings described in the previous section, Afm2tfm can
do other manipulations. (Again, it's best to use the prebuilt fonts
rather than attempting to remake them.)
'-s SLANT' makes an obliqued variant, as in:
afm2tfm Times-Roman -s .167 -v ptmro rptmro
This creates 'ptmro.vpl' and 'rptmro.tfm'. To use this font, put the
line
rptmro Times-Roman ".167 SlantFont"
into 'psfonts.map'. Then 'rptmro' (our name for the obliqued Times)
will act as if it were a resident font, although it is actually
constructed from Times-Roman via the PostScript routine 'SlantFont'
(which will slant everything 1/6 to the right, in this case).
Similarly, you can get an expanded font with
afm2tfm Times-Roman -e 1.2 -v ptmrre rptmrre
and by recording the pseudo-resident font
rptmrre Times-Roman "1.2 ExtendFont"
in 'psfonts.map'.
You can also create a small caps font with a command such as
afm2tfm Times-Roman -V ptmrc rptmrc
This will generate a set of pseudo-small caps mapped into the usual
lowercase positions and scaled down to 0.8 of the normal cap dimensions.
You can also specify the scaling as something other than the default
0.8:
afm2tfm Times-Roman -c 0.7 -V ptmrc rptmrc
It is unfortunately not possible to increase the width of the small
caps independently of the rest of the font. If you want a really
professional looking set of small caps, you need to acquire a small caps
font.
To change the 'PaintType' in a font from filled (0) to outlined (2),
you can add '"/PaintType 2 store"' to 'psfonts.map', as in the
following:
rphvrl Helvetica "/PaintType 2 store"
Afm2tfm writes to standard output the line you need to add to
'psfonts.map' to use that font, assuming the font is resident in the
printer; if the font is not resident, you must add the '<FILENAME'
command to download the font. Each identical line only needs to be
specified once in the 'psfonts.map' file, even though many different
fonts (small caps variants, or ones with different output encodings) may
be based on it.