otf2bdf − OpenType to BDF font converter
otf2bdf [options] font.{ttf,otf}
otf2bdf will convert an OpenType font to a BDF font using the Freetype2 renderer (http://www.freetype.org).
otf2bdf accepts the following command line arguments:
-v |
print warning messages when the font is converted. | ||
-n |
disable glyph hinting. | ||
-p n |
set the desired point size (see default value by running the program with the -h option). | ||
-et |
display a list of the platforms and encodings available in the font. The default values, compiled into the program, are a platform of 3 (Microsoft) and encoding of 1 (ISO10646). If the font does not contain the default platform and encoding, the fallback will be the Apple ISO10646 encoding. | ||
-r n |
set both the horizontal and the vertical resolution (see default value by running the program with the -h option). The minimum is 10dpi and the maximum is 1200dpi. | ||
-rh n |
set the horizontal resolution (see default value by running the program with the -h option). The minimum is 10dpi and the maximum is 1200dpi. | ||
-rv n |
set the vertical resolution (see default value by running the program with the -h option). The minimum is 10dpi and the maximum is 1200dpi. |
-o outfile
sets the output filename (default output is to stdout).
-pid id |
set the platform id for selecting the character map (see default value by running the program with the -h option). | ||
-eid id |
set the encoding id for selecting the character map (see default value by running the program with the -h option). | ||
-c c |
set the character spacing. This should be one of ‘P’ for proportional, ‘M’ for monospace, or ‘C’ for character cell. By default, the spacing of a font will be automatically determined to be either ‘M’ or ‘P’ according to values provided in the font. | ||
-f name |
set the foundry name used in the XLFD name. The default value is ‘Freetype’. | ||
-t name |
set the typeface name used in the XLFD name. By default, otf2bdf will attempt to get a name from the font first and then it will use the name supplied with this command line option, and if all else fails, it will use the name ‘Unknown’. | ||
-w name |
set the weight name used in the XLFD name. If this value is not supplied, the default value is assumed to be ‘Medium’. Some common values for this are ‘Thin’, ‘Delicate’, ‘ExtraLight’, ‘Light’, ‘Normal’, ‘Medium’, ‘SemiCondensed’, ‘Condensed’, ‘SemiBold’, ‘Bold’, ‘Heavy’, ‘ExtraBold’, and ‘ExtraHeavy’. | ||
-s name |
set the slant name used in the XLFD name. If this value is not supplied, the default value is assumed to be ‘R’, for Roman. Some common values for this are ‘R’ for Roman, ‘I’ for Italic, ‘O’ for Oblique, ‘RI’ for Reverse Italic, and ‘RO’ for Reverse Oblique. | ||
-k name |
set the width name used in the XLFD name. The default is ‘Normal’. | ||
-d name |
set the additional style name used in the XLFD name. The default is an empty string. | ||
-u char |
set the character used to replace the dashes/spaces in a font name. The default is the space character. |
-l subset
define a list of character codes which will be used to select a subset of glyphs from the font. The syntax of the subset string is the same as the syntax for selecting subsets in X11 XLFD font names. Example:
% otf2bdf -l ’60 70 80_90’ font.ttf -o font.bdf
The command above will only generate the glyphs for codes 60, 70, and 80 through 90 inclusive. Glyphs that are not in the subset are not generated.
-m mapfile
specifies a mapping file which will reencode the BDF font when it is generated. Any glyphs with codes that do not have a mapping will not be generated.
The remapping file should begin with two lines, one which starts with REGISTRY followed by the character set registry and one which starts with ENCODING followed by the encoding. An example from the iso8859.2 file:
REGISTRY
ISO8859
ENCODING 2
The remapping data should be two columns of hexadecimal numbers, separated by spaces or tabs. The first column should have the code which should be used in the BDF font. The second column should be the hexadecimal code of the glyph in the "cmap" table otf2bdf is using. An example mapping file is provided which will map fonts from Unicode (the default "cmap" table) to ISO8859-2.
Unicode is not the only option. If you choose another platform and encoding ID on the command line, then the remapping is assumed to map from the chosen platform and encoding to some other character set.
gbdfed(1),
xfed(1), bdftopcf(1), bdftosnf(1), bdfresize(1)
Glyph Bitmap Distribution Format (BDF) Specification,
Application Note 5005, Adobe System Inc, 1993
X Logical Font Description Conventions, X Consortium
The FreeType
project for providing the renderer!
Robert Wilhelm <[email protected]> for
pointing out a crucial problem with the pre-1.0 code.
Lho Li-Da <[email protected]> for problem reports.
Adrian Havill <[email protected]> for
unintentionally pointing out a missing feature.
Richard Verhoeven <[email protected]> for problem
reports and patches.
Choi Jun Ho <[email protected]> whose
implementation provided some nice new features.
Pavel Kankovsky <[email protected]> for
providing some critical metrics fixes and other
improvements.
Matti Koskinen <[email protected]> for pointing out a
problem.
Eugene Bobin <[email protected]> for mapping tables.
Oleg N. Yakovlev <[email protected]> for
pointing out a problem.
Bertrand Petit <[email protected]> for additional
functionality.
Roman Czyborra <[email protected]> for pointing
out some problems.
Mike Blazer <[email protected]> for some
Window’s compilation advice.
Solofo Ramangalahy <[email protected]> for
contributing some mapping tables.
Antoine Leca <[email protected]> for mapping
table suggestions.
Patrick Hagglund <[email protected]> for
Freetype2 patches.
Christos Tountas <[email protected]> for finding
problems.
Nelson Beebe <[email protected]> for finding
problems.
"Prophet of the Way" <[email protected]> for
finding a problem.
Mark Leisher
Computing Research Lab
New Mexico State University
Email: [email protected]