You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
What I expect (from instance-ref-stacked-high.ttf, made from in instance-reference.designspace, with the test string "Aa"):
What actually happens (in instance-test-stacked-high.ttf, made from instance-test.designspace):
The "a" is the original glyph rather than "a.break".
The rub lies in the way substitutions work:
In feature variations, the shaper is expected to find the first condition set that matches and then stop there.
The instantiator will collect all rules where the condition set matches and then swap glyph contents. On rule boundaries (like HGHT=750 for instance-test-stacked-high.ttf), when rules contain duplicate substitutions and start and end points overlap, it may collect two or more rules. Any duplicate substitutions can then cause a swap back and forth, undoing substitutions.
The text was updated successfully, but these errors were encountered:
Rules that work for variable fonts may not work for instances, because varLib/feature variations and the instantiator work differently.
A
anda
.The reproducers are described in more detail on https://github.com/daltonmaag/designspace-rules-reproducers.
What I expect (from instance-ref-stacked-high.ttf, made from in instance-reference.designspace, with the test string "Aa"):
What actually happens (in instance-test-stacked-high.ttf, made from instance-test.designspace):
The "a" is the original glyph rather than "a.break".
The rub lies in the way substitutions work:
The text was updated successfully, but these errors were encountered: