Skip to content

postscriptBlueValues are not written for UFOs extracted from a Glyphs file if the overshoot value has wrong polarity #1149

@kontur

Description

@kontur

Extracting UFO masters/instances from a Glyphs file where some overshoots are defined with the wrong polarity the exported UFOs are missing postscriptBlueValues entirely.

E.g. these master metrics values would cause this (rightly so, I suppose):

Cap Height 700 -15 (should be positive overshoot for zones above 0)
Descender -250 15 (should be negative overshoot for zones below 0)

Instead of silently dropping the fontinfo.plist postscriptBlueValues entry, I'd expect a warning. I couldn't pin point where exactly in the compile stack this assertion kicks in.

Attached a file where fontmake -g Test-PostscriptBlueValues-Fails.glyphs -o ufo will result in two masters, the master_ufo/TestfontPostscriptBlueValueFailing-Black.ufo/fontinfo.plist correctly with <key>postscriptBlueValues</key>

And master_ufo/TestfontPostscriptBlueValueFailing-Thin.ufo/fontinfo.plist missing the entry. (The same applies to the instances when ran with -i).

I'd expect:

  • a warning or, preferably, failing with a descriptive error
  • other, valid, zones to be compiled and resulting in a postscriptBlueValues entry (just one erroneous overshoot will cause all zones to be dropped)

Test-PostscriptBlueValues-Fails.glyphs.zip

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions