Lorp / fencer

GUI app to create avar2 mappings in fonts
Apache License 2.0
11 stars 0 forks source link

Add avar1 layer #14

Open Lorp opened 4 months ago

Lorp commented 4 months ago

The app will be improved by adding an avar v1 layer, so that an entire avar table can be created with both avar1 and avar2 sections active. This will be particularly useful for fonts where the designspace document uses designer units (e.g. Weight axis with values based on stem widths measured in font units) and its axes includes a \<map> element.

Lorp commented 2 months ago

Note that when the avar1-based \<map> elements for an axis map no more than min, default and max, then no avar1 data is necessary, since the relative placement of min, default and max is handled sufficiently by basic normalization math. However, the \<map> element still serves as a mapping between designer calibration and OpenType calibration, allowing even avar2 mappings to be expressed in designer units rather than OpenType units.

@behdad please remind me if avar2 mappings can indeed be expressed in designer units, with the \<map> mappings used to determine their values in the compiled font

behdad commented 2 months ago

@behdad please remind me if avar2 mappings can indeed be expressed in designer units, with the mappings used to determine their values in the compiled font

That's correct of the .designspace format, yes. The binary of course has no notion of designer units still.