/usr/share/doc/ttfautohint/TODO is in ttfautohint 0.97-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 | important improvements
----------------------
add features to the GUI
-> direct control over `actions'
-> preview similar to ftgrid
-> autocompletion of file names with tab key
handle OT features
-> use HarfBuzz as soon it provides the necessary APIs
control `gasp' table; Adam Twardoch suggest the following:
1. Calculate "gaspstem", i.e. the most common thickness of horizontal
stems (y direction distances) for lowercase Latin letters.
2. If gaspstem <= 0.03 * upm, apply gasp symmetric smoothing across the
entire range (rangeMaxPPEM 0xFFFF, value 15)
3. Else, calculate gaspthreshold as follows:
ceil(1.33 * upm / gaspstem) - 1
4. Apply no symmetric smoothing up to the gaspthreshold ppem (rangeMaxPPEM
gaspthreshold, value 7), and apply symmetric smoothing above.
In addition, ttfautohint should provide a commandline parameter that
allows the user to override the automatic logic. If that parameter = 0,
then gasp value 15 should be applied across the entire range. If the
parameter > 0, then up to that parameter value the gasp value 7 should be
applied, and gasp value 15 should be applied above.
create a separate blue zone class for `i' and `j':
. if the values differ more than a given threshold, handle them
separately
. otherwise, unify them with `f' and friends.
control the characters used for blue zones
-> non-latin scripts
user-defined blue zones?
-> old-style digits
control the width of blue zones
add control over character ranges which define a script; in particular, add
support for the PUA
handle normal and bold fonts differently; cf. Infinality patches;
this should help avoid filling of bowls (like in `e') for bold shapes.
help font families harmonize well so that e.g. x height and stem width
change synchronously
control the minimum stem width
try to `embolden' fonts at small sizes to avoid drop-outs; cf. Infinality
patches
make switching between smooth and strong hinting dependent on user-defined
ranges
improve `pre-hinting' by making the used PPEM value configurable
allow hinting of single glyphs, using a config file which holds the global
settings
better handling of `incomplete' fonts (this is, fonts which lack the minimum
set of glyphs necessary to determine the blue zones)
minor improvements
------------------
reject fonts which are `hopeless' (for example, `Lipstick')
correctly set `lowestRecPPEM' field in `head'
control dropout mode
apply hinting in x direction also?
-> warper: shifting with and without scaling
-> `standard' autofit hinting
add a config and/or command file for batch handling
warn against overwrite of output file in TTY mode?
reduce output size of option -p:
1. compare outline rendered at EM value with unhinted outline
2. pre-hint only if 1. differs more than given threshold (default 0.5%?)
make it possible to hint fonts which aren't alphabetic at all, for example,
icons; to do so, provide means to skip the global feature analysis
better control -i output
allow processing of multiple files by using globs as in the Midnight
Commander?
allow composite fonts already processed by ttfautohint to be processed
again (due to option `hint-with-components' this isn't urgent)
make ttfautohint remember options:
1. collect md5 checksums in a `~/.ttfautohint_history' file so that fonts
can be re-processed easily, using the same parameters
2. if fonts already processed by ttfautohint can be re-processed (which
isn't possible yet), parse the `version' string for parameters
implement (sort of) the opposite of -x, this is, decrease the x height
later enhancements
------------------
add CJK autohinting module
add Hebrew autohinting module
instead of emitting bytecode, write the hints as a VTT or FontLab script
Windows/Mac installer
various
-------
testing with Windows and Apple font checkers
man page for ttfautohint library
install library
add help2man script so that parallel builds always work
EOF
|