-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
static fonts from single-master sources have overlaps, skewing glyf ttx diff #975
Comments
Why not add |
of couse we can do that for the time being, until we have remove overlaps in rust, but the comparison would not be fair/realistic, since most static builds do/should have overlaps removed. |
Fixes #975 (until we also have the ability to remove overlaps)
@raphlinus just noted https://github.com/GraphiteEditor/Graphite/tree/master/libraries/path-bool is now a thing, seems to be a port of a js pathops library. This one is new to me. |
Following #971, ttx_diff.py now invokes fontmake
-o ttf
instead of-o variable
when the input source contains only one master, in order to avoid fontmake adding unnecessary empty/noop variable tables (googlefonts/fontmake#1125).But fontmake
-o ttf
also passes the source through the ufo2ft's remove overlaps filter (using booleanOperations by default, or skia-pathops if requested via--overlaps-backend pathops
).fontc being variable-first font compile does not attempt nor support removing the overlaps (as it would destroy master compatibility for a VF target).
Therefore comparing fontc-built single-master sources vs fontmake-built ones will usually produce several glyph diffs in glyph-related tables like glyf, maxp, etc. because the number of outline points when glyphs contain overlapping contours will be different between the two fonts.
For example, take this test font, containing only one glyph "T" with overlapping contours, and compare it with ttx_diff.py:
SingleMaster.glyphs.zip
The text was updated successfully, but these errors were encountered: