summaryrefslogtreecommitdiff
path: root/Build/source/texk/dvipsk/vmcms/afm2tfm.doc
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/texk/dvipsk/vmcms/afm2tfm.doc')
-rw-r--r--Build/source/texk/dvipsk/vmcms/afm2tfm.doc323
1 files changed, 323 insertions, 0 deletions
diff --git a/Build/source/texk/dvipsk/vmcms/afm2tfm.doc b/Build/source/texk/dvipsk/vmcms/afm2tfm.doc
new file mode 100644
index 00000000000..e1df6a38311
--- /dev/null
+++ b/Build/source/texk/dvipsk/vmcms/afm2tfm.doc
@@ -0,0 +1,323 @@
+
+
+
+ AFM2TFM(1) (9 August 1990) AFM2TFM(1)
+
+
+
+ NAME
+ afm2tfm - convert Adobe font metrics to TeX font metrics
+
+ SYNOPSIS
+ afm2tfm foo1[.afm] [ -e ratio ] [ -s slant ] [ -t foo2[.tfm]
+ ] [ -v bar[.vpl] | -V bar[.vpl] ] [ foo3[.tfm] ]
+
+ DESCRIPTION
+ PostScript fonts are (or should be) accompanied by font metric
+ files such as Times-Roman.afm, which describes the
+ characteristics of the font called Times-Roman. To use such
+ fonts with TeX, we need TFM files that contain similar
+ information. The command
+
+ afm2tfm Times-Roman.afm Times-Roman.tfm
+
+ (which can be reduced to simply
+
+ afm2tfm Times-Roman
+
+ by taking default shortcuts) will create the necessary file
+ Times-Roman.tfm, which can then be moved to the directory where
+ TeX normally looks for font metric information. The PostScript
+ conversion program dvips will also treat Times-Roman as a
+ resident PostScript font if you include the line
+
+ Times-Roman
+
+ in the file psfonts.map.
+
+ The file names used in this manual page are not consistent with
+ the new font naming scheme implemented by Karl Berry; please
+ refer to the main dvips.tex documentation for the correct names
+ to use.
+
+ PostScript fonts have a different encoding scheme from that of
+ plain TeX. Although both schemes are based on ASCII, special
+ characters such as ligatures and accents are handled quite
+ differently. Therefore we obtain best results by using a
+ "virtual font" interface, which makes TeX act as if the
+ PostScript font had a standard TeX encoding. Such a virtual
+ font can be obtained, for example, by the command
+
+ afm2tfm Times-Roman -v times
+
+ or, more fully, by:
+
+ afm2tfm Times-Roman.afm -v times.vpl Times-Roman.tfm
+
+ This produces two outputs, namely the "virtual property list"
+ file times.vpl and the TeX font metric file Times-Roman.tfm.
+ The latter file describes an "actual font" on
+
+
+
+ Page 1 (printed 2/26/92)
+
+
+
+
+
+
+ AFM2TFM(1) (9 August 1990) AFM2TFM(1)
+
+
+
+ which the virtual font is based.
+
+ If you wish to specify a different TFM file name than the
+ default, you can use the -t option; this will override any
+ default TFM file name that would be calculated from the input
+ file name.
+
+ To use the font in TeX, you should first run
+
+ vptovf times.vpl times.vf times.tfm
+
+ then install the file times.vf in the directory for virtual
+ fonts and install times.tfm in the directory for TeX font
+ metrics. (You can also make more complex virtual fonts by
+ editing times.vpl first.) Once this has been done, you're all
+ set. You can use code like this in TeX henceforth:
+
+ \font\myfont=times at 10pt
+ \myfont
+ Hello, I am being typeset in Times-Roman.
+
+
+ Note that there are two fonts, one actual (`Times-Roman', which
+ is analogous to a raw piece of hardware) and one virtual
+ (`times', which has typesetting knowhow added). You could also
+ say `\font\TR=Times-Roman at 10pt' and typeset directly with
+ that, but then you would have no ligatures or kerning, and you
+ would have to use Adobe character positions for special letters
+ like \ae. The virtual font called times not only has ligatures
+ and kerning, and most of the standard accent conventions of
+ TeX, it also has a few additional features not present in the
+ Computer Modern fonts. For example, it includes all the Adobe
+ characters (such as the Polish ogonek and the French
+ guillemots). It also allows you to type 58 accented letters
+ from `Aacute' to `zcaron' as if they were ligatures --- namely
+ as `acute' followed by `A', etc., where you can get `acute'
+ (\char 19) by defining a suitable control sequence. (The 58
+ constructed characters are found in the AFM file, and
+ constructed as specified by Adobe; you may wish to adjust the
+ spacing and/or add additional accent combinations by editing
+ the VPL file.) The only things you lose from ordinary TeX text
+ fonts are the dotless j (which can be hacked into the VPL file
+ with literal PostScript specials if you have the patience) and
+ uppercase Greek letters (which just don't exist unless you buy
+ them separately).
+
+ These fonts can be scaled to any size. Go wild! Note however,
+ that using PostScript fonts does use up the printer's virtual
+ memory and it does take time. You may find downloading the
+ Computer Modern fonts to be faster than using the built-in
+ PostScript fonts!
+
+
+
+ Page 2 (printed 2/26/92)
+
+
+
+
+
+
+ AFM2TFM(1) (9 August 1990) AFM2TFM(1)
+
+
+
+ OPTIONS
+ Special effects are also obtainable, with commands such as
+
+ afm2tfm Times-Roman -s .167 -v timessl Times-Slanted
+
+ which create timessl.vpl and Times-Slanted.tfm. To use this,
+ proceed as above but put the line
+
+ Times-Slanted "/Times-Roman .167 SlantFont"
+
+ into psfonts.map. Then Times-Slanted will act as if it were a
+ resident font, although it is actually constructed from
+ Times-Roman by PostScript hackery. (It's an oblique version of
+ Times-Roman, obtained by slanting everything 1/6 to the right.)
+ Similarly, you can get an extended font by
+
+ afm2tfm Times-Extended -e 1.2 -v timesx Times-Extended
+
+ and by recording the pseudo-resident font
+
+ Times-Extended "/Times-Roman 1.2 ExtendFont"
+
+ The command line switches are:
+
+ -e ratio
+ All characters are stretched horizontally by the stated
+ ratio; if it is less than 1.0, you get a condensed font.
+
+ -s slant
+ All characters are slanted to the right by the stated
+ slant; if it is negative, the letters slope to the left
+ (or they might be upright if you start with an italic
+ font).
+
+ -v file[.vpl]
+ Generate a virtual property list (VPL) file as well as a
+ TFM file.
+
+ -V file[.vpl]
+ Same as -v, but the virtual font generated is a caps
+ and-small-caps font obtained by scaling uppercase letters
+ by .8 to typeset lowercase. This font handles accented
+ letters and retains proper kerning.
+
+
+ NON-RESIDENT POSTSCRIPT FONTS
+ If you want to use a non-printer-resident PostScript font for
+ which you have a .pfb file (an Adobe Type 1 font program), you
+ can make it act like a resident font by putting a `<' sign and
+ the name of the .pfb file just after the font name in the
+ psfonts.map file entry. For example,
+
+
+
+ Page 3 (printed 2/26/92)
+
+
+
+
+
+
+ AFM2TFM(1) (9 August 1990) AFM2TFM(1)
+
+
+
+ StoneInformal <StoneInformal.pfb
+
+ will cause dvips to include StoneInformal.pfb in your document
+ as if it were a header file, whenever the pseudo-resident font
+ StoneInformal is used in a document. Similarly, you can
+ generate transformed fonts and include lines like
+
+ StoneInformal-Condensed <StoneInformal.pfb "/StoneInformal .8 ExtendF
+
+ in psfonts.map, in which case StoneInformal.pfb will be loaded
+ whenever StoneInformal-Condensed is used. (Each header file is
+ loaded at most once per document. The .pfb files should be
+ installed in the config directory with the other header files.)
+
+
+ FONT ALIASES
+ Some systems don't handle files with long names well---MSDOS
+ and TWENEX are two notable examples. For this reason, dvips
+ will accept an alias for such fonts. Such an alias shoul be
+ the first word on the psfonts.map line. For instance, if we
+ wanted the name ptmr to be used for Times-Roman since our
+ computer can't handle long names, we would use the following
+ line in our psfonts.map file:
+
+ ptmr Times-Roman
+
+ The TFM file must have the name ptmr.tfm.
+
+ The parsing of the psfonts.map file should be explained to
+ eliminate all confusion. Each line is separated into words,
+ where words are separated by spaces or tabs. If a word begins
+ with a double quote, however, it extends until the next double
+ quote or the end of the line. If a word starts with a less
+ than character, it is treated as a font head file (or
+ downloaded PostScript font). If a word starts with a double
+ quote, it is special instructions on how to generate that font.
+ Otherwise it is a name. The first such name is always the name
+ TeX uses for the font and is also the name of the TFM file. If
+ there is another name word, that name is used as the PostScript
+ name; if there is only one name word, it is used for both the
+ TeX name and the PostScript name.
+
+ Note that the aliases also register the full PostScript name,
+ so the single line
+
+ ptmr Times-Roman
+
+ would allow dvips to `find' the ptmr font as well as the
+ Times-Roman font.
+
+
+
+ Page 4 (printed 2/26/92)
+
+
+
+
+
+
+ AFM2TFM(1) (9 August 1990) AFM2TFM(1)
+
+
+
+ Incidentally, many font files (e.g., in the Adobe Type Library)
+ include more characters internally than you can access directly
+ without making a few changes. These characters typically have
+ code -1 in the afm file and no corresponding "constructed
+ character" (CC) specification. For example, in Adobe Garamond
+ there are Eth and eth, Thorn and thorn, plus things like
+ copyright and onehalf, plus 58 accented letters Aacute thru
+ zcaron (with accents over caps much better looking than you can
+ get from constructed accents). To use these characters, give
+ them character codes between 0 and 255 in the afm file, and
+ build the corresponding EncodingVector (instead of
+ StandardEncoding) in the pfb file. Then afm2tfm will generate
+ a vpl file that includes accented characters as ligatures, as
+ explained above; for example, `Aacute' will be accessible as
+ `acute' followed by `A' (as well as by its character code in
+ the virtual font).
+
+ FILES
+ psfonts.map in the config directory used by dvips (update
+ this). ../afm/Makefile in the dvips sources (look at this for
+ examples).
+
+ SEE ALSO
+ dvips(1), tex(1), vptovf(1)
+
+ BUGS
+ An option to add letterspacing to the virtual font was rejected
+ by Knuth because it would make the fi and f ligatures break the
+ normal rhythmic pattern.
+
+ AUTHORS
+ Tomas Rokicki <rokicki@neon.stanford.edu> and Don Knuth
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Page 5 (printed 2/26/92)
+
+
+