1
0
mirror of synced 2025-12-19 17:48:10 -05:00

Merge pull request #95 from m4rc1e/sibling-fallbacks

build_stat: improve elided axisvalues
This commit is contained in:
Marc Foley
2022-11-25 10:00:14 +00:00
committed by GitHub
6 changed files with 17 additions and 14 deletions

View File

@@ -234,14 +234,17 @@ def build_stat(ttFont, sibling_ttFonts=[]):
for axis, fallback in fallbacks_in_siblings:
if axis in seen_axes:
continue
value = 0.0
elided_value = axis_registry[axis].default_value
elided_fallback = axis_registry.fallback_for_value(axis, elided_value)
a = {
"tag": axis,
"name": axis_registry[axis].display_name,
"values": [{"name": "Normal", "value": value, "flags": 0x2}],
"values": [
{"name": elided_fallback.name, "value": elided_value, "flags": 0x2}
],
}
if axis in LINKED_VALUES and value in LINKED_VALUES[axis]:
a["values"][0]["linkedValue"] = LINKED_VALUES[axis][value]
if axis in LINKED_VALUES and elided_value in LINKED_VALUES[axis]:
a["values"][0]["linkedValue"] = LINKED_VALUES[axis][elided_value]
res.append(a)
buildStatTable(ttFont, res, macNames=False)

View File

@@ -89,7 +89,7 @@
<AxisValue index="10" Format="3">
<AxisIndex value="3"/>
<Flags value="2"/> <!-- ElidableAxisValueName -->
<ValueNameID value="288"/> <!-- Normal -->
<ValueNameID value="289"/> <!-- Roman -->
<Value value="0.0"/>
<LinkedValue value="1.0"/>
</AxisValue>

View File

@@ -94,15 +94,15 @@
<AxisValue index="10" Format="3">
<AxisIndex value="3"/>
<Flags value="2"/> <!-- ElidableAxisValueName -->
<ValueNameID value="529"/> <!-- Normal -->
<ValueNameID value="529"/> <!-- Roman -->
<Value value="0.0"/>
<LinkedValue value="1.0"/>
</AxisValue>
<AxisValue index="11" Format="1">
<AxisIndex value="4"/>
<Flags value="2"/> <!-- ElidableAxisValueName -->
<ValueNameID value="529"/> <!-- Normal -->
<Value value="0.0"/>
<ValueNameID value="530"/> <!-- Normal -->
<Value value="100.0"/>
</AxisValue>
</AxisValueArray>
<ElidedFallbackNameID value="2"/> <!-- Italic -->

View File

@@ -88,7 +88,7 @@
<AxisValue index="9" Format="3">
<AxisIndex value="2"/>
<Flags value="2"/> <!-- ElidableAxisValueName -->
<ValueNameID value="280"/> <!-- Normal -->
<ValueNameID value="466"/> <!-- Roman -->
<Value value="0.0"/>
<LinkedValue value="1.0"/>
</AxisValue>
@@ -96,12 +96,12 @@
<AxisIndex value="3"/>
<Flags value="2"/> <!-- ElidableAxisValueName -->
<ValueNameID value="280"/> <!-- Normal -->
<Value value="0.0"/>
<Value value="100.0"/>
</AxisValue>
<AxisValue index="11" Format="3">
<AxisIndex value="4"/>
<Flags value="2"/> <!-- ElidableAxisValueName -->
<ValueNameID value="280"/> <!-- Normal -->
<ValueNameID value="466"/> <!-- Roman -->
<Value value="0.0"/>
<LinkedValue value="1.0"/>
</AxisValue>

View File

@@ -83,14 +83,14 @@
<AxisValue index="9" Format="3">
<AxisIndex value="2"/>
<Flags value="2"/> <!-- ElidableAxisValueName -->
<ValueNameID value="283"/> <!-- Normal -->
<ValueNameID value="285"/> <!-- Roman -->
<Value value="0.0"/>
<LinkedValue value="1.0"/>
</AxisValue>
<AxisValue index="10" Format="3">
<AxisIndex value="3"/>
<Flags value="2"/> <!-- ElidableAxisValueName -->
<ValueNameID value="283"/> <!-- Normal -->
<ValueNameID value="285"/> <!-- Roman -->
<Value value="0.0"/>
<LinkedValue value="1.0"/>
</AxisValue>

View File

@@ -448,7 +448,7 @@ def test_stat(fp, sibling_fps):
build_stat(font, siblings)
stat_fp = fp.replace(".ttf", "_STAT.ttx")
### output good files
## output good files
# with open(stat_fp, "w") as doc:
# got = dump(font["STAT"], font)
# doc.write(got)