Skip to content

STAT_in_statics

Simon Cozens edited this page May 8, 2025 · 2 revisions

Checking STAT table entries in static fonts.

STAT_in_statics

  • Applies to: TTF
  • Fontspector can hotfix?: no
  • Fontspector can fix sources?: no

Rationale

Adobe feature syntax allows for the definition of a STAT table. Fonts built with a hand-coded STAT table in feature syntax may be built either as static or variable, but will end up with the same STAT table.

This is a problem, because a STAT table which works on variable fonts will not be appropriate for static instances. The examples in the OpenType spec of non-variable fonts with a STAT table show that the table entries must be restricted to those entries which refer to the static font's position in the designspace. i.e. a Regular weight static should only have the following entry for the weight axis:

<AxisIndex value="0"/>
<Flags value="2"/>  <!-- ElidableAxisValueName -->
<ValueNameID value="265"/>  <!-- Regular -->
<Value value="400.0"/>

However, if the STAT table intended for a variable font is compiled into a static, it will have many entries for this axis. In this case, Windows will read the first entry only, causing all instances to report themselves as "Thin Condensed".

Proposal

Profiles

  • universal (in section 'Universal Profile Checks')

  • googlefonts (in section 'Universal Profile Checks')

Clone this wiki locally