/contrib/groff/src/utils/hpftodit/hpftodit.man

https://bitbucket.org/freebsd/freebsd-head/ · Unknown · 311 lines · 308 code · 3 blank · 0 comment · 0 complexity · d0cbb8c0c45b80e82b656c0c7840bae7 MD5 · raw file

  1. .tr ~
  2. .ig
  3. Copyright (C) 1994-2000, 2001, 2003, 2004 Free Software Foundation, Inc.
  4. Permission is granted to make and distribute verbatim copies of
  5. this manual provided the copyright notice and this permission notice
  6. are preserved on all copies.
  7. Permission is granted to copy and distribute modified versions of this
  8. manual under the conditions for verbatim copying, provided that the
  9. entire resulting derived work is distributed under the terms of a
  10. permission notice identical to this one.
  11. Permission is granted to copy and distribute translations of this
  12. manual into another language, under the above conditions for modified
  13. versions, except that this permission notice may be included in
  14. translations approved by the Free Software Foundation instead of in
  15. the original English.
  16. ..
  17. .\" Like TP, but if specified indent is more than half
  18. .\" the current line-length - indent, use the default indent.
  19. .de Tp
  20. .ie \\n(.$=0:((0\\$1)*2u>(\\n(.lu-\\n(.iu)) .TP
  21. .el .TP "\\$1"
  22. ..
  23. .de CW
  24. .ie \\n(.$>2 \&\\$1\f(CR\\$2\fP\\$3
  25. .el \&\f(CR\\$1\fP\\$2
  26. ..
  27. .tr ~
  28. .TH HPFTODIT @MAN1EXT@ "@MDATE@" "Groff Version @VERSION@"
  29. .\" --------------------------------------------------------------------------
  30. .SH NAME
  31. .\" --------------------------------------------------------------------------
  32. hpftodit \- create font description files for use with groff \-Tlj4
  33. .\" --------------------------------------------------------------------------
  34. .SH SYNOPSIS
  35. .\" --------------------------------------------------------------------------
  36. .B hpftodit
  37. [
  38. .B \-adqsv
  39. ]
  40. [
  41. .BI \-i n
  42. ]
  43. .I tfm_file
  44. .I map_file
  45. .I font
  46. .PP
  47. It is possible to have whitespace between the
  48. .B \-i
  49. option and its parameter.
  50. .\" --------------------------------------------------------------------------
  51. .SH DESCRIPTION
  52. .\" --------------------------------------------------------------------------
  53. .B hpftodit
  54. creates a font file for use with a Hewlett-Packard LaserJet~4\(enseries
  55. (or newer) printer with
  56. .BR "groff \-Tlj4" ,
  57. using data from an HP tagged font metric (TFM) file.
  58. .I tfm_file
  59. is the name of the TFM file for the font; Intellifont and
  60. TrueType TFM files are supported, but symbol set TFM files are not.
  61. .I map_file
  62. is a file giving the groff names for characters in the font; this file
  63. should consist of a sequence of lines of the form:
  64. .IP
  65. .I
  66. m u c1 c2 \fR.\|.\|. [
  67. .CW #
  68. .I comment
  69. ]
  70. .LP
  71. where
  72. .I m
  73. is a decimal integer giving the MSL number of the character,
  74. .I u
  75. is a hexadecimal integer giving the Unicode value of the character,
  76. and
  77. .IR c1 ,
  78. .IR c2 ", .\|.\|."
  79. are the groff names of the character.
  80. The values can be separated by any whitespace; the Unicode value must
  81. use uppercase digits A\^\(en\^F, and must be without a leading
  82. .CW ` 0x ',
  83. .CW ` u ',
  84. or
  85. .CW ` U+ '.
  86. Unicode values corresponding to composite glyphs are decomposed; e.g.,
  87. .CW ` u00C0 '
  88. becomes
  89. .CW ` u0041_0300 '.
  90. The name for a glyph without a groff name may be given as
  91. .CW u \fIXXXX\fP
  92. if the glyph corresponds to a Unicode value, or as an unnamed glyph
  93. .CW ` --- '.
  94. If the given Unicode value is in the Private Use Area
  95. (0xE000\^\(en\^0xF8FF), the glyph is included as an unnamed glyph.
  96. Refer to
  97. .BR groff_diff (@MAN1EXT@)
  98. for additional information about unnamed glyphs and how to access them.
  99. .LP
  100. Blank lines and lines beginning with
  101. .CW ` # '
  102. are ignored.
  103. A
  104. .CW ` # '
  105. following one or more groff names begins a comment.
  106. Because
  107. .CW ` # '
  108. is a valid groff name, it must appear first in a list of
  109. groff names if a comment is included, e.g.,
  110. .IP
  111. .CW "3 0023 # # number sign"
  112. .LP
  113. or
  114. .IP
  115. .CW "3 0023 # sh # number sign"
  116. .LP
  117. rather than
  118. .IP
  119. .CW "3 0023 sh # # number sign"
  120. .LP
  121. which will treat the first
  122. .CW ` # '
  123. as the beginning of the comment.
  124. .LP
  125. .I font
  126. is the name of the groff font file.
  127. The groff font file is written to
  128. .IR font ;
  129. if
  130. .I font
  131. is specified as
  132. .CW ` - ',
  133. the output is written to the standard output.
  134. .LP
  135. The
  136. .B \-s
  137. option should be given if the font is special
  138. (a font is
  139. .I special
  140. if
  141. .B troff
  142. should search it whenever
  143. a character is not found in the current font).
  144. If the font is special,
  145. it should be listed in the
  146. .B fonts
  147. command in the DESC file;
  148. if it is not special, there is no need to list it, since
  149. .B troff
  150. can automatically mount it when it's first used.
  151. .LP
  152. If the
  153. .B \-i
  154. option is used,
  155. .B hpftodit
  156. automatically will generate an italic correction,
  157. a left italic correction and a subscript correction
  158. for each character
  159. (the significance of these parameters is explained in
  160. .BR groff_font (@MAN5EXT@)).
  161. .\" --------------------------------------------------------------------------
  162. .SH OPTIONS
  163. .\" --------------------------------------------------------------------------
  164. .TP
  165. .B \-a
  166. Include characters in the TFM file that are not included in the map
  167. file.
  168. A glyph with corresponding Unicode value is given the name
  169. .RI u XXXX ;
  170. a glyph without a Unicode value is included as an unnamed glyph
  171. \&`\-\^\-\^\-'.
  172. A glyph with a Unicode value in the Private Use Area
  173. (0xE000\^\(en\^0xF8FF) also is included as an unnamed glyph.
  174. .IP
  175. This option provides a simple means of adding Unicode-named and unnamed
  176. glyphs to a font without including them in the map file, but it affords
  177. little control over which glyphs are placed in a regular font and which
  178. are placed in a special font.
  179. The presence or absence of the
  180. .B \-s
  181. option has some effect on which glyphs are included: without the
  182. .B \-s
  183. option, only the \(lqtext\(rq symbol sets are searched for matching
  184. glyphs; with the
  185. .B \-s
  186. option, only the \(lqmathematical\(rq symbol sets
  187. are searched.
  188. Nonetheless, restricting the symbol sets searched isn't very
  189. selective\(emmany glyphs are placed in both regular and special fonts.
  190. Normally, the
  191. .B \-a
  192. option should be used only as a last resort.
  193. .\" --------------------------------------------------------------------------
  194. .TP
  195. .B \-d
  196. Dump information about the TFM file to the standard output; this option
  197. can be useful for ensuring that a TFM file is a proper match for a font,
  198. and that the contents of the TFM file are suitable.
  199. The information includes the values of important TFM tags, and a listing
  200. (by MSL number for Intellifont TFM files or by Unicode value for
  201. TrueType TFM files) of the glyphs included in the TFM file.
  202. The unit of measure `DU' for some tags indicates design units; there are
  203. 8782 design units per em for Intellifont fonts, and 2048 design units
  204. per em for TrueType fonts.
  205. Note that the accessibility of a glyph depends on its inclusion in a
  206. symbol set; some TFM files list many glyphs but only a few symbol sets.
  207. .IP
  208. The glyph listing includes the glyph index within the TFM file, the MSL
  209. or Unicode value, and the symbol set and character code that will be
  210. used to print the glyph.
  211. If
  212. .I map_file
  213. is given,
  214. groff names are given for matching glyphs.
  215. If only the glyph index and MSL or Unicode value are given, the glyph
  216. does not appear in any supported symbol set and cannot be printed.
  217. .IP
  218. With the
  219. .B \-d
  220. option,
  221. .I map_file
  222. is optional, and
  223. .I font
  224. is ignored if given.
  225. .\" --------------------------------------------------------------------------
  226. .TP
  227. .B \-q
  228. Suppress warnings about characters in the map file that were not found
  229. in the TFM file.
  230. Warnings never are given for unnamed glyphs or by glyphs named by their
  231. Unicode values.
  232. This option is useful when sending the output of
  233. .B hpftodit
  234. to the standard output.
  235. .\" --------------------------------------------------------------------------
  236. .TP
  237. .B \-v
  238. Print the
  239. .B hpftodit
  240. version number.
  241. .\" --------------------------------------------------------------------------
  242. .TP
  243. .B \-s
  244. The font is special.
  245. This option adds the
  246. .B special
  247. command to the font file, and affects the order in which HP symbol sets
  248. are searched for each glyph.
  249. Without the
  250. .B \-s
  251. option, the \(lqtext\(rq sets are searched before
  252. the \(lqmathematical\(rq symbol sets.
  253. With the
  254. .B \-s
  255. option, the search order is reversed.
  256. .\" --------------------------------------------------------------------------
  257. .TP
  258. .BI \-i n
  259. Generate an italic correction for each character so that the character's
  260. width plus the character's italic correction is equal to
  261. .I n
  262. thousandths of an em plus the amount by which the right edge of the
  263. character's bounding is to the right of the character's origin.
  264. If this would result in a negative italic correction, use a zero italic
  265. correction instead.
  266. .IP
  267. Also generate a subscript correction equal to the
  268. product of the tangent of the slant of the font and
  269. four fifths of the x-height of the font.
  270. If this would result in a subscript correction greater than the italic
  271. correction, use a subscript correction equal to the italic correction
  272. instead.
  273. .IP
  274. Also generate a left italic correction for each character
  275. equal to
  276. .I n
  277. thousandths of an em plus the amount by which the left edge of the
  278. character's bounding box is to the left of the character's origin.
  279. The left italic correction may be negative.
  280. .IP
  281. This option normally is needed only with italic or oblique fonts;
  282. a value of 50 (0.05 em) usually is a reasonable choice.
  283. .\" --------------------------------------------------------------------------
  284. .SH FILES
  285. .\" --------------------------------------------------------------------------
  286. .ad 0
  287. .TP \w'\fB@FONTDIR@/devlj4/generate/\fP\fI*\fP.map'u+2n
  288. .B @FONTDIR@/devlj4/DESC
  289. Device description file.
  290. .TP
  291. .BI @FONTDIR@/devlj4/ F
  292. Font description file for font
  293. .IR F .
  294. .TP
  295. .BI @FONTDIR@/devlj4/generate/ * .map
  296. Symbol mapping files
  297. .\" --------------------------------------------------------------------------
  298. .SH "SEE ALSO"
  299. .\" --------------------------------------------------------------------------
  300. .BR groff (@MAN1EXT@),
  301. .BR groff_diff (@MAN1EXT@),
  302. .BR grolj4 (@MAN1EXT@),
  303. .BR groff_font (@MAN5EXT@),
  304. .BR lj4_font (@MAN5EXT@)
  305. .
  306. .\" Local Variables:
  307. .\" mode: nroff
  308. .\" End: