adobe-fonts / source-sans

Sans serif font family for user interface environments
https://adobe-fonts.github.io/source-sans
SIL Open Font License 1.1
3.49k stars 229 forks source link

VF designspaces need public.skipExportGlyphs key set to match GOADB #250

Open punchcutter opened 1 year ago

punchcutter commented 1 year ago

Without the key set the TTFs will contain more glyphs which causes problems with the font in ots.

punchcutter commented 1 year ago

To be more clear about this issue the current build process shares some tables from the OTF CFF2 build with the variable TTF, but not all tables. If there are more glyphs in a font than specified in the GlyphOrderAndAliasDB file makeotf will drop them from the resulting font so we end up with an OTF that has fewer glyphs than the original source. The variable TTF built by fontmake will contain all of the source glyphs unless we specify public.skipExportGlyphs. If we don't then the TTF will end up with more glyphs than the OTF which by itself doesn't hurt anything. The buildVFs.sh script, however, copies the hhea from the OTF so if the number of glyphs differs we have a conflict. The hhea.numberLongMetrics field is the number of metrics in the hmtx table. Without dropping the glyphs in the TTF we end up with a mismatch. ttx spits out the message "WARNING: too much 'hmtx' table data" as reported at https://github.com/adobe-fonts/source-serif/issues/110