Updated: 2022/Sep/29

Please read Privacy Policy. It's for your privacy.

HPFTODIT(1)                 General Commands Manual                HPFTODIT(1)

       hpftodit - create font description files for use with groff -Tlj4

       hpftodit [ -adqsv ] [ -in ] tfm_file map_file font

       It is possible to have whitespace between the -i option and its

       hpftodit creates a font file for use with a Hewlett-Packard LaserJet
       4-series (or newer) printer with groff -Tlj4, using data from an HP
       tagged font metric (TFM) file.  tfm_file is the name of the TFM file
       for the font; Intellifont and TrueType TFM files are supported, but
       symbol set TFM files are not.  map_file is a file giving the groff
       names for characters in the font; this file should consist of a
       sequence of lines of the form:

              m u c1 c2 ... [ # comment ]

       where m is a decimal integer giving the MSL number of the character, u
       is a hexadecimal integer giving the Unicode value of the character, and
       c1, c2, ...  are the groff names of the character.  The values can be
       separated by any whitespace; the Unicode value must use uppercase
       digits A-F, and must be without a leading `0x', `u', or `U+'.  Unicode
       values corresponding to composite glyphs are decomposed; e.g., `u00C0'
       becomes `u0041_0300'.  The name for a glyph without a groff name may be
       given as uXXXX if the glyph corresponds to a Unicode value, or as an
       unnamed glyph `---'.  If the given Unicode value is in the Private Use
       Area (0xE000-0xF8FF), the glyph is included as an unnamed glyph.  Refer
       to groff_diff(1) for additional information about unnamed glyphs and
       how to access them.

       Blank lines and lines beginning with `#' are ignored.  A `#' following
       one or more groff names begins a comment.  Because `#' is a valid groff
       name, it must appear first in a list of groff names if a comment is
       included, e.g.,

              3   0023   #   # number sign


              3   0023   # sh   # number sign

       rather than

              3   0023   sh #   # number sign

       which will treat the first `#' as the beginning of the comment.

       font is the name of the groff font file.  The groff font file is
       written to font; if font is specified as `-', the output is written to
       the standard output.

       The -s option should be given if the font is special (a font is special
       if troff should search it whenever a character is not found in the
       current font).  If the font is special, it should be listed in the
       fonts command in the DESC file; if it is not special, there is no need
       to list it, since troff can automatically mount it when it's first

       If the -i option is used, hpftodit automatically will generate an
       italic correction, a left italic correction and a subscript correction
       for each character (the significance of these parameters is explained
       in groff_font(5)).

       -a     Include characters in the TFM file that are not included in the
              map file.  A glyph with corresponding Unicode value is given the
              name uXXXX; a glyph without a Unicode value is included as an
              unnamed glyph `---'.  A glyph with a Unicode value in the
              Private Use Area (0xE000-0xF8FF) also is included as an unnamed

              This option provides a simple means of adding Unicode-named and
              unnamed glyphs to a font without including them in the map file,
              but it affords little control over which glyphs are placed in a
              regular font and which are placed in a special font.  The
              presence or absence of the -s option has some effect on which
              glyphs are included: without the -s option, only the "text"
              symbol sets are searched for matching glyphs; with the -s
              option, only the "mathematical" symbol sets are searched.
              Nonetheless, restricting the symbol sets searched isn't very
              selective--many glyphs are placed in both regular and special
              fonts.  Normally, the -a option should be used only as a last

       -d     Dump information about the TFM file to the standard output; this
              option can be useful for ensuring that a TFM file is a proper
              match for a font, and that the contents of the TFM file are
              suitable.  The information includes the values of important TFM
              tags, and a listing (by MSL number for Intellifont TFM files or
              by Unicode value for TrueType TFM files) of the glyphs included
              in the TFM file.  The unit of measure `DU' for some tags
              indicates design units; there are 8782 design units per em for
              Intellifont fonts, and 2048 design units per em for TrueType
              fonts.  Note that the accessibility of a glyph depends on its
              inclusion in a symbol set; some TFM files list many glyphs but
              only a few symbol sets.

              The glyph listing includes the glyph index within the TFM file,
              the MSL or Unicode value, and the symbol set and character code
              that will be used to print the glyph.  If map_file is given,
              groff names are given for matching glyphs.  If only the glyph
              index and MSL or Unicode value are given, the glyph does not
              appear in any supported symbol set and cannot be printed.

              With the -d option, map_file is optional, and font is ignored if

       -q     Suppress warnings about characters in the map file that were not
              found in the TFM file.  Warnings never are given for unnamed
              glyphs or by glyphs named by their Unicode values.  This option
              is useful when sending the output of hpftodit to the standard

       -v     Print the hpftodit version number.

       -s     The font is special.  This option adds the special command to
              the font file, and affects the order in which HP symbol sets are
              searched for each glyph.  Without the -s option, the "text" sets
              are searched before the "mathematical" symbol sets.  With the -s
              option, the search order is reversed.

       -in    Generate an italic correction for each character so that the
              character's width plus the character's italic correction is
              equal to n thousandths of an em plus the amount by which the
              right edge of the character's bounding is to the right of the
              character's origin.  If this would result in a negative italic
              correction, use a zero italic correction instead.

              Also generate a subscript correction equal to the product of the
              tangent of the slant of the font and four fifths of the x-height
              of the font.  If this would result in a subscript correction
              greater than the italic correction, use a subscript correction
              equal to the italic correction instead.

              Also generate a left italic correction for each character equal
              to n thousandths of an em plus the amount by which the left edge
              of the character's bounding box is to the left of the
              character's origin.  The left italic correction may be negative.

              This option normally is needed only with italic or oblique
              fonts; a value of 50 (0.05 em) usually is a reasonable choice.

       /usr/share/groff_font/devlj4/DESC          Device description file.

       /usr/share/groff_font/devlj4/F             Font description file for
                                                  font F.

                                                  Symbol mapping files

       groff(1), groff_diff(1), grolj4(1), groff_font(5), lj4_font(5)

Groff Version 1.19.2           September 4, 2005                   HPFTODIT(1)