Closed HinTak closed 3 years ago
Possibly, I'll have a look. One other issue with the codebase is is there are two code paths for writing font file data. The original allows random access and can be used to write any number of glyphs but this path is slow since it finalizes the state of the font after each glyph is written. The other faster path is only used when all glyphs will be written. The -a option uses the faster path but all other options use slower path. Thanks.
It sounds like it might be combination of two issues - a difference between the fast path and the slow path gives difference in the width of .notdef, and some rasterizer-related issues affecting glyphs with no ink markings (.notdef, space, and uni000D/carriage return) when -g -r are specified. Since people outside of microsoft don't have source-level access to vttshell, this issue needs to be looked at by microsoft staff...
Yes, it was an issue introduced with rasterizer removal. Phantom point calculation for empty glyphs. Integrated a fix. How hopefully it works for simple glyphs, composite glyphs and empty glyphs. Thanks.
-g0 -r100
:-g200 -r300
:-b
,-c
,-s
, and also no arguments:So the summary is that
-a
gives identical results (other than checksums and dates), most other switches (including no passing any) disgrees by the width of .notdef, and with-g... -r...
, not only .notdef, but also space and uni000D (carriage return). @paullinnerud : this looks like another issue along the line of "rasterizer removal"?