convert a TrueType font into TeX’s PK format
see also :
ttf2tfm - afm2tfm
[-q] [-n] font-name
ttf2pk -t [-q] font-name
ttf2pk --version |
add an example, a script, a trick and tips
no example yet ...
... Feel free to add your own example above to help other Linux-lovers !
converts a TrueType font into a PK file; the created font
can then be used with TeX or LaTeX.
(Chinese/Japanese/Korean/old Vietnamese) subfonts as created
by ttf2tfm are also supported.
always assumes 10pt as the design size for the written TeX
ttf2pk is part of the FreeType 1 package, a high
quality TrueType rendering library.
Parameters specified to ttf2tfm are preserved for
ttf2pk in map files—ttf2tfm writes out to
standard output, as the last line, a proper entry for a map file.
As an example, a call to
ttf2tfm arial -p T1.enc -s 0.25 -P 1 -E 0 arials
will produce the following line:
arials arial Slant=0.25 Pid=1 Eid=0 Encoding=T1.enc
See ttf2tfm(1) and afm2tfm(1) of the dvips
package for a detailed description of encoding files.
Here a table listing the various ttf2tfm parameters and
the corresponding entries in a map file:
Single replacement glyph names given to ttf2tfm with
’-r old-glyphname new-glyphname’
are directly specified with
will be ignored if in subfont mode or if no encoding file is
One additional parameter in a map file is unique to
ttf2pk: ’Hinting’, which can take the values
’On’ or ’Off’. Some fonts (e.g. the
CJK part of cyberbit.ttf) are rendered incorrectly if hinting is
activated. Default is ’On’ (you can also use
’Yes’, ’No’, ’1’, and
For a description of subfonts (i.e., entries of the form
please refer to ttf2tfm(1).
The format of a map file is simple. Each line defines a font;
first comes the TeX font name, then its TrueType font file name,
followed by the parameters in any order. Case is significant
(even for parameter names); the parameters are separated from its
values by an equal sign, with whitespace possibly surrounding it.
ttf2pk reads in all map files line by line in the order
given in the configuration file, continuing until the TeX font
specified on the command line is found, otherwise the programs
exits with error code 2. Thus you can use any character
invalid in a TeX font name to start a comment line.
You can use ’\’ as the final character of a line to
indicate that the input is continued on the next line. The
backslash and the following newline character will be removed.
ttf2pk will abort if it can’t find or read the TeX
font metrics file of the given TeX font name.
This optional switch makes ttf2pk quiet. It suppresses any
informational output except warning and error messages.
Use only ’.pk’ as the extension instead of
Test for the existence of font-name. Returns 0 on success
and prints out the corresponding line of a map file (default:
ttfonts.map), provided the -q switch isn’t set.
The TeX name of the font. ttf2pk looks this name up in a
map file (see below) for further information how to process the
The resolution, given in dots per inch. Currently the horizontal
resolution is equal to the vertical resolution. The design size
is always assumed to be 10pt.
Shows the current version of ttf2pk and the used file
search library (e.g. kpathsea).
Shows usage information.
Environment variables for file searching are described in the
manual page of ttf2tfm.
If the call was successful, 0 will be returned. In case of
error, the return value is 1. Finally, if the font
can’t be found in the map files, 2 is returned. This
simplifies the inclusion of ttf2pk into scripts like
mktexpk for automatic font generation.
the configuration file
ttf2pk uses a small configuration file called ttf2pk.cfg;
in each line it contains a keyword with its value, separated by
whitespace. Comment lines can start with any of the following
characters: ’*’, ’#’, ’;’,
and ’%’. Leading whitespace is ignored.
Currently, only one keyword, ’map’, is recognized in
this file; it takes a map file name as a parameter. If no
extension is given to the map file name, .map is appended. No
whitespace is allowed in the map file name. The ’map’
keyword can be given more than once to specify multiple map
files; if the map file name is prepended by a plus sign, it is
added to the list of map files to be used. Example:
This makes ttf2pk to first read foo.map, then bar.map.
If the configuration file is not found, ttf2pk tries to
use ttfonts.map instead.
Frédéric LOYER <loyer[:at:]ensta[:dot:]fr>