TTFAUTOHINT(1) | User Commands | TTFAUTOHINT(1) |
ttfautohint - add new, auto-generated hints to a TrueType font
ttfautohint [OPTION]... [IN-FILE [OUT-FILE]]
Replace hints in TrueType font IN-FILE and write output to OUT-FILE. If OUT-FILE is missing, standard output is used instead; if IN-FILE is missing also, standard input and output are used.
The new hints are based on FreeType's auto-hinter.
This program is a simple front-end to the `ttfautohint' library.
Long options can be given with one or two dashes, and with and without equal sign between option and argument. This means that the following forms are acceptable: `-foo=bar', `--foo=bar', `-foo bar', `--foo bar'.
Mandatory arguments to long options are mandatory for short options too.
The program accepts both TTF and TTC files as input. Use option -i only if you have a legal permission to modify the font. The used PPEM value for option -p is FUnits per em, normally 2048. With option -s, use default values for standard stem width and height, otherwise they are derived from script-specific characters resembling the shape of character `o'.
A hint set contains the optimal hinting for a certain PPEM value; the larger the hint set range (as given by options -l and -r), the more hint sets get computed, usually increasing the output font size. The `gasp' table of the output file always enables grayscale hinting for all sizes (limited by option -G, which is handled in the bytecode). Increasing the value of -G does not increase the output font size.
Options -f and -D take a four-letter string that identifies a script. Option -f sets the script used as a fallback for glyphs that can't be associated with a known script. By default, such glyphs are hinted; if option -S is set, they are scaled only instead. Option -D sets the default script for handling OpenType features.
Possible four-letter string values are
A control instructions file contains entries of the form
<font idx> is the current subfont, <glyph id> is a glyph name or index, <glyph ids> is a set of <glyph id>s, <stem widths> is an unordered set of integer stem widths in font units, <shift> is a real number in px, <points> and <ppems> are integer ranges as with option `-X'.
<script> and <feature> are four-letter tags that define a style the <glyph ids> are assigned to; possible values for <script> are the same as with option -D, possible values for <feature> are
`w' assigns stem widths to a style; the first value sets the default. `l' (`r') creates one-point segments with direction left (right). <left offset> and <right offset> specify offsets (in font units) relative to the corresponding points to give the segments a length. `n' removes points from horizontal segments, making them `weak' points. `t' (`p') applies delta exceptions to the given points before (after) IUP.
`#' starts a line comment, which gets ignored. Empty lines are ignored, too.
Key letters `l', `r', `n', `p', `t', `w', `x', and `y' have the verbose aliases `left', `right', `nodir', `point', `touch', `width', `xshift', and `yshift', respectively.
A GUI version of this program is called `ttfautohintGUI'.
Report bugs to: freetype-devel@nongnu.org
ttfautohint home page: <http://www.freetype.org/ttfautohint>
Copyright © 2011-2018 Werner Lemberg <wl@gnu.org>.
License: FreeType License (FTL) or GNU GPLv2.
This is free software: you are free to change and redistribute it. There is NO
WARRANTY, to the extent permitted by law.
July 2018 | ttfautohint 1.8.2 |