1hpftodit(1)                 General Commands Manual                hpftodit(1)
2
3
4

Name

6       hpftodit - create font description files for use with groff and grolj4
7

Synopsis

9       hpftodit [-aqs] [-i n] tfm-file map-file font-description
10
11       hpftodit -d tfm-file [map-file]
12
13       hpftodit --help
14
15       hpftodit -v
16       hpftodit --version
17

Description

19       hpftodit creates a font description file for use with a Hewlett-Packard
20       LaserJet 4-series (or newer) printer with the grolj4(1)  output  driver
21       of groff(1), using data from an HP tagged font metric (TFM) file.  tfm-
22       file is the name of the font's TFM file; Intellifont and  TrueType  TFM
23       files  are  supported, but symbol set TFM files are not.  map-file is a
24       file giving the groff special character identifiers for glyphs  in  the
25       font; this file should consist of a sequence of lines of the form
26              m u c1 c2 ... [# comment]
27       where  m  is  a  decimal  integer giving the glyph's MSL (Master Symbol
28       List) number, u is a hexadecimal integer giving its  Unicode  character
29       code, and c1, c2, ...  are its groff glyph names (see groff_char(7) for
30       a list).  The values can be separated by any number  of  spaces  and/or
31       tabs.  The Unicode value must use uppercase hexadecimal digits A–F, and
32       must lack a leading “0x”, “u”, or “U+”.  Unicode  values  corresponding
33       to   composite   glyphs   are   decomposed;  that  is  “u00C0”  becomes
34u0041_0300”.  A glyph without a groff special character identifier may
35       be  named  uXXXX  if the glyph corresponds to a Unicode value, or as an
36       unnamed glyph “---”.  If the given Unicode value is in the Private  Use
37       Area  (PUA) (0xE000–0xF8FF), the glyph is included as an unnamed glyph.
38       Refer to groff_diff(1) for additional information about unnamed  glyphs
39       and how to access them.
40
41       Blank  lines and lines beginning with “#” are ignored.  A “#” following
42       one or more groff names begins a comment.  Because “#” is a valid groff
43       name, it must appear first in a list of groff names if a comment is in‐
44       cluded, as in
45              3   0023   #   # number sign
46       or
47              3   0023   # sh   # number sign
48       whereas in
49              3   0023   sh #   # number sign
50       the first “#” is interpreted as the beginning of the comment.
51
52       Output is written in groff_font(5) format to font-description,  a  file
53       named  for  the  intended  groff font name; if this operand is “-”, the
54       font description is written to the standard output stream.
55
56       If the -i option is  used,  hpftodit  automatically  will  generate  an
57       italic correction, a left italic correction, and a subscript correction
58       for each glyph (the significance of these parameters  is  explained  in
59       groff_font(5)).
60

Options

62       --help  displays  a  usage message, while -v and --version show version
63       information; all exit afterward.
64
65       -a     Include glyphs in the TFM file that are  not  included  in  map-
66              file.   A  glyph  with  corresponding Unicode value is given the
67              name uXXXX; a glyph without a Unicode value is  included  as  an
68              unnamed  glyph  “---”.  A glyph with a Unicode value in the Pri‐
69              vate Use Area (0xE000–0xF8FF) is also  included  as  an  unnamed
70              glyph.
71
72              This  option provides a simple means of adding Unicode-named and
73              unnamed glyphs to a font without including them in the map file,
74              but  it affords little control over which glyphs are placed in a
75              regular font and which are placed in a special font.  The  pres‐
76              ence or absence of the -s option has some effect on which glyphs
77              are included: without  it,  only  the  “text”  symbol  sets  are
78              searched  for  matching glyphs; with it, only the “mathematical”
79              symbol sets are searched.  Nonetheless, restricting  the  symbol
80              sets  searched  isn't  very  selective—many glyphs are placed in
81              both regular and special fonts.  Normally,  -a  should  be  used
82              only as a last resort.
83
84       -d     Dump  information  about  the  TFM  file  to the standard output
85              stream; use this to ensure that a TFM file is a proper match for
86              a font, and that its contents are suitable.  The information in‐
87              cludes the values of important TFM tags and a  listing  (by  MSL
88              number  for  Intellifont TFM files or by Unicode value for True‐
89              Type TFM files) of the glyphs included in  the  TFM  file.   The
90              unit of measure “DU” for some tags indicates design units; there
91              are 8782 design units per em for Intellifont fonts, and 2048 de‐
92              sign units per em for TrueType fonts.  Note that the accessibil‐
93              ity of a glyph depends on its inclusion in a  symbol  set;  some
94              TFM files list many glyphs but only a few symbol sets.
95
96              The  glyph listing includes the glyph index within the TFM file,
97              the MSL or Unicode value, and the symbol set and character  code
98              that  will  be  used  to print the glyph.  If map-file is given,
99              groff names are given for matching glyphs.  If  only  the  glyph
100              index and MSL or Unicode value are given, the glyph does not ap‐
101              pear in any supported symbol set and cannot be printed.
102
103              With the -d option, map-file is optional, and output-font is ig‐
104              nored if given.
105
106       -i n   Generate  an  italic correction for each glyph so that its width
107              plus its italic correction is equal to n thousandths  of  an  em
108              plus the amount by which the right edge of the glyphs's bounding
109              box is to the right of its origin.  If a negative italic correc‐
110              tion would result, use a zero italic correction instead.
111
112              Also generate a subscript correction equal to the product of the
113              tangent of the slant of the font and four fifths of the x-height
114              of  the font.  If a subscript correction greater than the italic
115              correction would result, use a subscript correction equal to the
116              italic correction instead.
117
118              Also generate a left italic correction for each glyph equal to n
119              thousandths of an em plus the amount by which the left  edge  of
120              the  glyphs's  bounding  box  is to the left of its origin.  The
121              left italic correction may be negative.
122
123              This option normally is  needed  only  with  italic  or  oblique
124              fonts; a value of 50 (0.05 em) usually is a reasonable choice.
125
126       -q     Suppress  warnings  about  glyphs  in the map file that were not
127              found in the TFM file.  Warnings never  are  given  for  unnamed
128              glyphs  or by glyphs named by their Unicode values.  This option
129              is useful when sending the output of hpftodit  to  the  standard
130              output stream.
131
132       -s     Add  the special directive to the font description file, affect‐
133              ing the order in which HP symbol  sets  are  searched  for  each
134              glyph.  Without this option, the “text” sets are searched before
135              the “mathematical” symbol sets.  With it, the  search  order  is
136              reversed.
137

Files

139       /usr/share/groff/1.23.0/font/devlj4/DESC
140              describes the lj4 output device.
141
142       /usr/share/groff/1.23.0/font/devlj4/F
143              describes the font known as F on device lj4.
144
145       /usr/share/groff/1.23.0/font/devlj4/generate/Makefile
146              is  a  make(1) script that uses hpftodit(1) to prepare the groff
147              font description files above from HP TFM data; in can be used to
148              regenerate them in the event the TFM files are updated.
149
150       /usr/share/groff/1.23.0/font/devlj4/generate/special.awk
151              is  an  awk(1) script that corrects the Intellifont-based height
152              metrics for several glyphs in the S (special) font for  TrueType
153              CG Times used in the HP LaserJet 4000 and later.
154
155       /usr/share/groff/1.23.0/font/devlj4/generate/special.map
156       /usr/share/groff/1.23.0/font/devlj4/generate/symbol.map
157       /usr/share/groff/1.23.0/font/devlj4/generate/text.map
158       /usr/share/groff/1.23.0/font/devlj4/generate/wingdings.map
159              map  MSL indices and HP Unicode PUA assignments to groff special
160              character identifiers.
161

See also

163       groff(1), groff_diff(1), grolj4(1), groff_font(5)
164
165
166
167groff 1.23.0                    2 November 2023                    hpftodit(1)
Impressum