[VARC] Load axisValues as float
https://github.com/fonttools/fonttools/pull/3395#issuecomment-1897696665
This commit is contained in:
parent
5ad4045cec
commit
037bbe1030
@ -185,7 +185,7 @@ class VarComponent:
|
|||||||
|
|
||||||
axisValues, i = TupleVariation.decompileDeltas_(numAxes, data, i)
|
axisValues, i = TupleVariation.decompileDeltas_(numAxes, data, i)
|
||||||
assert len(axisValues) == numAxes
|
assert len(axisValues) == numAxes
|
||||||
self.axisValues = tuple(axisValues)
|
self.axisValues = tuple(fi2fl(v, 14) for v in axisValues)
|
||||||
|
|
||||||
if flags & VarComponentFlags.AXIS_VALUES_HAVE_VARIATION:
|
if flags & VarComponentFlags.AXIS_VALUES_HAVE_VARIATION:
|
||||||
self.axisValuesVarIndex, i = _read_uint32var(data, i)
|
self.axisValuesVarIndex, i = _read_uint32var(data, i)
|
||||||
@ -239,7 +239,11 @@ class VarComponent:
|
|||||||
if numAxes:
|
if numAxes:
|
||||||
flags |= VarComponentFlags.HAVE_AXES
|
flags |= VarComponentFlags.HAVE_AXES
|
||||||
data.append(_write_uint32var(self.axisIndicesIndex))
|
data.append(_write_uint32var(self.axisIndicesIndex))
|
||||||
data.append(TupleVariation.compileDeltaValues_(self.axisValues))
|
data.append(
|
||||||
|
TupleVariation.compileDeltaValues_(
|
||||||
|
[fl2fi(v, 14) for v in self.axisValues]
|
||||||
|
)
|
||||||
|
)
|
||||||
else:
|
else:
|
||||||
flags &= ~VarComponentFlags.HAVE_AXES
|
flags &= ~VarComponentFlags.HAVE_AXES
|
||||||
|
|
||||||
@ -282,7 +286,7 @@ class VarComponent:
|
|||||||
|
|
||||||
if self.axisIndicesIndex is not None:
|
if self.axisIndicesIndex is not None:
|
||||||
write("axisIndicesIndex", self.axisIndicesIndex)
|
write("axisIndicesIndex", self.axisIndicesIndex)
|
||||||
write("axisValues", self.axisValues)
|
write("axisValues", [float(fl2str(v, 14)) for v in self.axisValues])
|
||||||
|
|
||||||
if self.axisValuesVarIndex != NO_VARIATION_INDEX:
|
if self.axisValuesVarIndex != NO_VARIATION_INDEX:
|
||||||
write("axisValuesVarIndex", self.axisValuesVarIndex)
|
write("axisValuesVarIndex", self.axisValuesVarIndex)
|
||||||
@ -313,7 +317,7 @@ class VarComponent:
|
|||||||
elif name == "axisIndicesIndex":
|
elif name == "axisIndicesIndex":
|
||||||
self.axisIndicesIndex = safeEval(v)
|
self.axisIndicesIndex = safeEval(v)
|
||||||
elif name == "axisValues":
|
elif name == "axisValues":
|
||||||
self.axisValues = safeEval(v)
|
self.axisValues = tuple(str2fl(v, 14) for v in safeEval(v))
|
||||||
elif name == "axisValuesVarIndex":
|
elif name == "axisValuesVarIndex":
|
||||||
self.axisValuesVarIndex = safeEval(v)
|
self.axisValuesVarIndex = safeEval(v)
|
||||||
elif name == "transformVarIndex":
|
elif name == "transformVarIndex":
|
||||||
|
@ -304,14 +304,13 @@ class _TTGlyphVARC(_TTGlyph):
|
|||||||
axisIndices = varc.AxisIndicesList.Item[comp.axisIndicesIndex]
|
axisIndices = varc.AxisIndicesList.Item[comp.axisIndicesIndex]
|
||||||
axisValues = Vector(comp.axisValues)
|
axisValues = Vector(comp.axisValues)
|
||||||
if comp.axisValuesVarIndex != NO_VARIATION_INDEX:
|
if comp.axisValuesVarIndex != NO_VARIATION_INDEX:
|
||||||
axisValues += instancer[comp.axisValuesVarIndex]
|
axisValues += fi2fl(instancer[comp.axisValuesVarIndex], 14)
|
||||||
assert len(axisIndices) == len(axisValues), (
|
assert len(axisIndices) == len(axisValues), (
|
||||||
len(axisIndices),
|
len(axisIndices),
|
||||||
len(axisValues),
|
len(axisValues),
|
||||||
)
|
)
|
||||||
location = {
|
location = {
|
||||||
fvarAxes[i].axisTag: fi2fl(v, 14)
|
fvarAxes[i].axisTag: v for i, v in zip(axisIndices, axisValues)
|
||||||
for i, v in zip(axisIndices, axisValues)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if comp.transformVarIndex != NO_VARIATION_INDEX:
|
if comp.transformVarIndex != NO_VARIATION_INDEX:
|
||||||
|
@ -332,7 +332,7 @@
|
|||||||
<glyphName value="glyph00008"/>
|
<glyphName value="glyph00008"/>
|
||||||
<flags value="0x12"/>
|
<flags value="0x12"/>
|
||||||
<axisIndicesIndex value="2"/>
|
<axisIndicesIndex value="2"/>
|
||||||
<axisValues value="(3537,)"/>
|
<axisValues value="[0.2159]"/>
|
||||||
<translateX value="-6.0"/>
|
<translateX value="-6.0"/>
|
||||||
</VarComponent>
|
</VarComponent>
|
||||||
</VarCompositeGlyph>
|
</VarCompositeGlyph>
|
||||||
@ -341,7 +341,7 @@
|
|||||||
<glyphName value="glyph00008"/>
|
<glyphName value="glyph00008"/>
|
||||||
<flags value="0x16"/>
|
<flags value="0x16"/>
|
||||||
<axisIndicesIndex value="0"/>
|
<axisIndicesIndex value="0"/>
|
||||||
<axisValues value="(-13184, 0, 7928)"/>
|
<axisValues value="[-0.8047, 0.0, 0.4839]"/>
|
||||||
<axisValuesVarIndex value="0"/>
|
<axisValuesVarIndex value="0"/>
|
||||||
<translateX value="-3.0"/>
|
<translateX value="-3.0"/>
|
||||||
</VarComponent>
|
</VarComponent>
|
||||||
@ -351,7 +351,7 @@
|
|||||||
<glyphName value="glyph00009"/>
|
<glyphName value="glyph00009"/>
|
||||||
<flags value="0x3e"/>
|
<flags value="0x3e"/>
|
||||||
<axisIndicesIndex value="1"/>
|
<axisIndicesIndex value="1"/>
|
||||||
<axisValues value="(-8847, 655, -8484, 0, 0)"/>
|
<axisValues value="[-0.54, 0.04, -0.5178, 0.0, 0.0]"/>
|
||||||
<axisValuesVarIndex value="1"/>
|
<axisValuesVarIndex value="1"/>
|
||||||
<transformVarIndex value="2"/>
|
<transformVarIndex value="2"/>
|
||||||
<translateX value="-5.0"/>
|
<translateX value="-5.0"/>
|
||||||
@ -363,7 +363,7 @@
|
|||||||
<glyphName value="glyph00010"/>
|
<glyphName value="glyph00010"/>
|
||||||
<flags value="0x3e"/>
|
<flags value="0x3e"/>
|
||||||
<axisIndicesIndex value="0"/>
|
<axisIndicesIndex value="0"/>
|
||||||
<axisValues value="(-12714, -5843, 0)"/>
|
<axisValues value="[-0.776, -0.3566, 0.0]"/>
|
||||||
<axisValuesVarIndex value="3"/>
|
<axisValuesVarIndex value="3"/>
|
||||||
<transformVarIndex value="4"/>
|
<transformVarIndex value="4"/>
|
||||||
<translateX value="53.0"/>
|
<translateX value="53.0"/>
|
||||||
@ -375,7 +375,7 @@
|
|||||||
<glyphName value="glyph00009"/>
|
<glyphName value="glyph00009"/>
|
||||||
<flags value="0x3e"/>
|
<flags value="0x3e"/>
|
||||||
<axisIndicesIndex value="0"/>
|
<axisIndicesIndex value="0"/>
|
||||||
<axisValues value="(-4227, 819, -8484)"/>
|
<axisValues value="[-0.258, 0.05, -0.5178]"/>
|
||||||
<axisValuesVarIndex value="5"/>
|
<axisValuesVarIndex value="5"/>
|
||||||
<transformVarIndex value="6"/>
|
<transformVarIndex value="6"/>
|
||||||
<translateX value="-5.0"/>
|
<translateX value="-5.0"/>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user