1TTFAUTOHINT(1)                   User Commands                  TTFAUTOHINT(1)
2
3
4

NAME

6       ttfautohint - add new, auto-generated hints to a TrueType font
7

SYNOPSIS

9       ttfautohint [OPTION]... [IN-FILE [OUT-FILE]]
10

DESCRIPTION

12       Replace  hints  in  TrueType font IN-FILE and write output to OUT-FILE.
13       If OUT-FILE is missing, standard output is used instead; if IN-FILE  is
14       missing also, standard input and output are used.
15
16       The new hints are based on FreeType's auto-hinter.
17
18       This program is a simple front-end to the `ttfautohint' library.
19
20       Long  options can be given with one or two dashes, and with and without
21       equal sign between option and argument.  This means that the  following
22       forms are acceptable: `-foo=bar', `--foo=bar', `-foo bar', `--foo bar'.
23
24       Mandatory  arguments  to  long  options are mandatory for short options
25       too.
26

OPTIONS

28       --debug
29              print debugging information
30
31       -a, --stem-width-mode=S
32              select stem width mode for  grayscale,  GDI  ClearType,  and  DW
33              ClearType,  where  S  is a string of three letters with possible
34              values `n' for natural, `q' for quantized, and  `s'  for  strong
35              (default: qsq)
36
37       -c, --composites
38              hint glyph composites also
39
40       -d, --dehint
41              remove all hints
42
43       -D, --default-script=S
44              set default OpenType script (default: latn)
45
46       -f, --fallback-script=S
47              set fallback script (default: none)
48
49       -F, --family-suffix=S
50              append suffix to the family name string(s) in the `name' table
51
52       -G, --hinting-limit=N
53              switch off hinting above this PPEM value (default: 200); value 0
54              means no limit
55
56       -h, --help
57              display this help and exit
58
59       -H, --fallback-stem-width=N
60              set fallback stem width (default: 50 font units at 2048 UPEM)
61
62       -i, --ignore-restrictions
63              override font license restrictions
64
65       -I, --detailed-info
66              add detailed ttfautohint info to the version  string(s)  in  the
67              `name' table
68
69       -l, --hinting-range-min=N
70              the minimum PPEM value for hint sets (default: 8)
71
72       -m, --control-file=FILE
73              get control instructions from FILE
74
75       -n, --no-info
76              don't  add  ttfautohint  info  to  the  version string(s) in the
77              `name' table
78
79       -p, --adjust-subglyphs
80              handle subglyph adjustments in exotic fonts
81
82       -r, --hinting-range-max=N
83              the maximum PPEM value for hint sets (default: 50)
84
85       -R, --reference=FILE
86              derive blue zones from reference font FILE
87
88       -s, --symbol
89              input is symbol font
90
91       -S, --fallback-scaling
92              use fallback scaling, not hinting
93
94       -t, --ttfa-table
95              add TTFA information table
96
97       -T, --ttfa-info
98              display TTFA table in IN-FILE and exit
99
100       -v, --verbose
101              show progress information
102
103       -V, --version
104              print version information and exit
105
106       -W, --windows-compatibility
107              add blue zones for `usWinAscent'  and  `usWinDescent'  to  avoid
108              clipping
109
110       -x, --increase-x-height=N
111              increase  x  height  for  sizes in the range 6<=PPEM<=N; value 0
112              switches off this feature (default: 14)
113
114       -X, --x-height-snapping-exceptions=STRING
115              specify a comma-separated list of x-height snapping  exceptions,
116              for example "-9, 13-17, 19" (default: "")
117
118       -Z, --reference-index=N
119              face index of reference font (default: 0)
120
121       The  program  accepts  both  TTF and TTC files as input.  Use option -i
122       only if you have a legal permission to modify the font.  The used  PPEM
123       value  for  option -p is FUnits per em, normally 2048.  With option -s,
124       use default values for standard stem width and height,  otherwise  they
125       are  derived  from  script-specific  characters resembling the shape of
126       character `o'.
127
128       A hint set contains the optimal hinting for a certain PPEM  value;  the
129       larger  the  hint  set  range (as given by options -l and -r), the more
130       hint sets get computed, usually increasing the output font  size.   The
131       `gasp'  table  of  the output file always enables grayscale hinting for
132       all sizes (limited by option -G, which is  handled  in  the  bytecode).
133       Increasing the value of -G does not increase the output font size.
134
135       Options  -f  and -D take a four-letter string that identifies a script.
136       Option -f sets the script used as a fallback for glyphs that  can't  be
137       associated with a known script.  By default, such glyphs are hinted; if
138       option -S is set, they are scaled only instead.  Option -D sets the de‐
139       fault script for handling OpenType features.
140
141       Possible four-letter string values are
142
143              adlm  (Adlam),  arab  (Arabic), armn (Armenian), avst (Avestan),
144              bamu (Bamum), beng (Bengali), buhd (Buhid), cakm (Chakma),  cans
145              (Canadian Syllabics), cari (Carian), cher (Cherokee), copt (Cop‐
146              tic), cprt (Cypriot), cyrl (Cyrillic), deva  (Devanagari),  dsrt
147              (Deseret),  ethi  (Ethiopic),  geor (Georgian (Mkhedruli)), geok
148              (Georgian (Khutsuri)), glag (Glagolitic),  goth  (Gothic),  grek
149              (Greek),  gujr  (Gujarati), guru (Gurmukhi), hebr (Hebrew), hmnp
150              (Nyiakeng Puachue Hmong), kali (Kayah Li),  khmr  (Khmer),  khms
151              (Khmer  Symbols),  knda (Kannada), lao (Lao), latn (Latin), latb
152              (Latin Subscript Fallback), latp (Latin  Superscript  Fallback),
153              lisu  (Lisu), mlym (Malayalam), medf (Medefaidrin), mong (Mongo‐
154              lian), mymr (Myanmar), nkoo (N'Ko), olck (Ol Chiki),  orkh  (Old
155              Turkic),  osge  (Osage), osma (Osmanya), rohg (Hanifi Rohingya),
156              saur (Saurashtra), shaw (Shavian), sinh  (Sinhala),  sund  (Sun‐
157              danese), taml (Tamil), tavt (Tai Viet), telu (Telugu), tfng (Ti‐
158              finagh), thai  (Thai),  vaii  (Vai),  yezi  (Yezidi),  none  (no
159              script).
160
161       A control instructions file contains entries of the form
162
163              [<font idx>] <script> <feature> @ <glyph ids>
164
165              [<font idx>] <script> <feature> w <stem widths>
166
167              [<font idx>] <glyph id> l|r <points> [(<left offset>,<right off‐
168              set>)]
169
170              [<font idx>] <glyph id> n <points>
171
172              [<font idx>] <glyph id> t|p <points> [x <shift>] [y  <shift>]  @
173              <ppems>
174
175       <font idx> is the current subfont, <glyph id> is a glyph name or index,
176       <glyph ids> is a set of <glyph id>s, <stem widths> is an unordered  set
177       of  integer  stem widths in font units, <shift> is a real number in px,
178       <points> and <ppems> are integer ranges as with option `-X'.
179
180       <script> and <feature> are four-letter tags that  define  a  style  the
181       <glyph  ids> are assigned to; possible values for <script> are the same
182       as with option -D, possible values for <feature> are
183
184              c2cp (petite capitals from capitals), c2sc (small capitals  from
185              capitals), ordn (ordinals), pcap (petite capitals), ruby (ruby),
186              sinf (scientific inferiors), smcp (small capitals),  subs  (sub‐
187              script), sups (superscript), titl (titling).
188
189       `w'  assigns  stem widths to a style; the first value sets the default.
190       `l' (`r') creates  one-point  segments  with  direction  left  (right).
191       <left  offset> and <right offset> specify offsets (in font units) rela‐
192       tive to the corresponding points to give the segments  a  length.   `n'
193       removes  points  from  horizontal  segments, making them `weak' points.
194       `t' (`p') applies delta exceptions to the given points  before  (after)
195       IUP.
196
197       `#'  starts  a  line  comment, which gets ignored.  Empty lines are ig‐
198       nored, too.
199
200       Key letters `l', `r', `n', `p', `t', `w', `x', and `y' have the verbose
201       aliases  `left', `right', `nodir', `point', `touch', `width', `xshift',
202       and `yshift', respectively.
203
204       A GUI version of this program is called `ttfautohintGUI'.
205

REPORTING BUGS

207       Report bugs to: freetype-devel@nongnu.org
208
209       ttfautohint home page: <https://www.freetype.org/ttfautohint>
210
212       Copyright © 2011-2021 Werner Lemberg <wl@gnu.org>.   License:  FreeType
213       License (FTL) or GNU GPLv2.
214       This  is  free  software:  you  are free to change and redistribute it.
215       There is NO WARRANTY, to the extent permitted by law.
216
217
218
219ttfautohint 1.8.4                 August 2021                   TTFAUTOHINT(1)
Impressum