4 simplify hinting bytecode by using the undocumented properties of some
5 instructions to shift the original coordinates of twilight points; this
6 should also fix the rendering problems on platforms like OS X.
8 explicitly check for new functionality of `FT_Sfnt_Table_Info'
10 write a platform-independent GUI
11 -> direct control over `actions'
12 -> preview similar to ftgrid
15 important improvements
16 ----------------------
21 control `gasp' table; Adam Twardoch suggest the following:
23 1. Calculate "gaspstem", i.e. the most common thickness of horizontal
24 stems (y-direction distances) for lowercase Latin letters.
25 2. If gaspstem <= 0.03 * upm, apply gasp symmetric smoothing across the
26 entire range (rangeMaxPPEM 0xFFFF, value 15)
27 3. Else, calculate gaspthreshold as follows:
28 ceil(1.33 * upm / gaspstem) - 1
29 4. Apply no symmetric smoothing up to the gaspthreshold ppem (rangeMaxPPEM
30 gaspthreshold, value 7), and apply symmetric smoothing above.
32 In addition, ttfautohint should provide a commandline parameter that
33 allows the user to override the automatic logic. If that parameter = 0,
34 then gasp value 15 should be applied across the entire range. If the
35 parameter > 0, then up to that parameter value the gasp value 7 should be
36 applied, and gasp value 15 should be applied above.
38 disable hinting at large ppem values (> ~2000) to avoid numeric overflows
42 control activation threshold of blue zone widths
44 control the width of blue zones
46 handle normal and bold fonts differently; cf. Infinality patches
48 control the minimum stem width
50 try to `embolden' fonts at small sizes to avoid drop-outs; cf. Infinality
53 implement `x-height-snapping-exceptions' and `pre-hinting'
55 allow hinting of single glyphs, using a config file which holds the global
58 better handling of `incomplete' fonts (this is, fonts which lack the minimum
59 set of glyphs necessary to determine the blue zones)
65 make FreeType error codes human-readable
67 correctly set `modified' field in `head'
69 correctly set `lowestRecPPEM' field in `head'
71 set dropout mode et al.
73 apply hinting in x direction also?
74 -> warper: shifting with and without scaling
75 -> `standard' autofit hinting
77 try to reduce size of hints by handling strong points separately
79 add a config and/or command file for batch handling
81 make creation of DSIG table optional
87 add CJK autohinting module
88 add Hebrew autohinting module
90 instead of emitting bytecode, write the hints as a VTT or FontLab script
98 testing with Windows font checker
100 man page for ttfautohint library