googlefonts / fontmake

Compile fonts from sources (UFO, Glyphs) to binary (OpenType, TrueType).
Apache License 2.0
777 stars 93 forks source link

xscale and yscale attributes are ignored in glif while compiling variable font #503

Open Small-Ku opened 5 years ago

Small-Ku commented 5 years ago

"xscale" and "yscale" attributes in glifs are ignored when compiling variable font. For example, ᐈ (/u1408), ᐉ (/u1409) in https://github.com/googlei18n/noto-source/tree/master/src/NotoSansCanadianAboriginal seems strange while the Weight axis larger than 400. But it is not affected while compiling masters (without '-o variable' argument). 518 _ The top one is the variable font in weight 900. The bottom one is the "Bold" master. Both of them are compiled with fontmake.

anthrotype commented 5 years ago

The gvar deltas only affect the positioning of the glyf component, and have no effect on the 2x2 transformation of components. I think this is a font source issue, and in this case the scaled components should be decomposed (but I will double check in the Noto sources). Thanks anyway for the report.

anthrotype commented 5 years ago

Perhaps fonttools varLib could print a warning logging message when the transformation of components across masters is different from the neutral master.