[varc] Add ConditionSets
This commit is contained in:
parent
c155632e8f
commit
74f870f4ef
@ -2693,6 +2693,22 @@ def prune_post_subset(self, font, options):
|
|||||||
if comp.axisIndicesIndex is not None:
|
if comp.axisIndicesIndex is not None:
|
||||||
comp.axisIndicesIndex = mapping[comp.axisIndicesIndex]
|
comp.axisIndicesIndex = mapping[comp.axisIndicesIndex]
|
||||||
|
|
||||||
|
conditionSetList = table.ConditionSetList
|
||||||
|
if conditionSetList is not None:
|
||||||
|
conditionSets = conditionSetList.ConditionSet
|
||||||
|
usedIndices = set()
|
||||||
|
for glyph in table.VarCompositeGlyphs.VarCompositeGlyph:
|
||||||
|
for comp in glyph.components:
|
||||||
|
if comp.conditionSetIndex is not None:
|
||||||
|
usedIndices.add(comp.conditionSetIndex)
|
||||||
|
usedIndices = sorted(usedIndices)
|
||||||
|
conditionSetList.ConditionSet = _list_subset(conditionSets, usedIndices)
|
||||||
|
mapping = {old: new for new, old in enumerate(usedIndices)}
|
||||||
|
for glyph in table.VarCompositeGlyphs.VarCompositeGlyph:
|
||||||
|
for comp in glyph.components:
|
||||||
|
if comp.conditionSetIndex is not None:
|
||||||
|
comp.conditionSetIndex = mapping[comp.conditionSetIndex]
|
||||||
|
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
|
||||||
|
@ -3168,6 +3168,25 @@ otData = [
|
|||||||
),
|
),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
|
(
|
||||||
|
"ConditionSetList",
|
||||||
|
[
|
||||||
|
(
|
||||||
|
"uint32",
|
||||||
|
"ConditionSetCount",
|
||||||
|
None,
|
||||||
|
None,
|
||||||
|
"Number of condition-set tables in the ConditionSet array",
|
||||||
|
),
|
||||||
|
(
|
||||||
|
"LOffset",
|
||||||
|
"ConditionSet",
|
||||||
|
"ConditionSetCount",
|
||||||
|
0,
|
||||||
|
"Array of condition-set tables.",
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
(
|
(
|
||||||
"ConditionSet",
|
"ConditionSet",
|
||||||
[
|
[
|
||||||
@ -3377,6 +3396,7 @@ otData = [
|
|||||||
),
|
),
|
||||||
("LOffset", "Coverage", None, None, ""),
|
("LOffset", "Coverage", None, None, ""),
|
||||||
("LOffset", "MultiVarStore", None, None, "(may be NULL)"),
|
("LOffset", "MultiVarStore", None, None, "(may be NULL)"),
|
||||||
|
("LOffset", "ConditionSetList", None, None, "(may be NULL)"),
|
||||||
("LOffset", "AxisIndicesList", None, None, "(may be NULL)"),
|
("LOffset", "AxisIndicesList", None, None, "(may be NULL)"),
|
||||||
("LOffset", "VarCompositeGlyphs", None, None, ""),
|
("LOffset", "VarCompositeGlyphs", None, None, ""),
|
||||||
],
|
],
|
||||||
|
@ -60,7 +60,7 @@ class VarComponentFlags(IntFlag):
|
|||||||
HAVE_TRANSLATE_Y = 1 << 5
|
HAVE_TRANSLATE_Y = 1 << 5
|
||||||
HAVE_ROTATION = 1 << 6
|
HAVE_ROTATION = 1 << 6
|
||||||
|
|
||||||
USE_MY_METRICS = 1 << 7
|
HAVE_CONDITION = 1 << 7
|
||||||
|
|
||||||
HAVE_SCALE_X = 1 << 8
|
HAVE_SCALE_X = 1 << 8
|
||||||
HAVE_SCALE_Y = 1 << 9
|
HAVE_SCALE_Y = 1 << 9
|
||||||
@ -158,6 +158,7 @@ class VarComponent:
|
|||||||
def populateDefaults(self, propagator=None):
|
def populateDefaults(self, propagator=None):
|
||||||
self.flags = 0
|
self.flags = 0
|
||||||
self.glyphName = None
|
self.glyphName = None
|
||||||
|
self.conditionSetIndex = None
|
||||||
self.axisIndicesIndex = None
|
self.axisIndicesIndex = None
|
||||||
self.axisValues = ()
|
self.axisValues = ()
|
||||||
self.axisValuesVarIndex = NO_VARIATION_INDEX
|
self.axisValuesVarIndex = NO_VARIATION_INDEX
|
||||||
@ -174,6 +175,9 @@ class VarComponent:
|
|||||||
i += gidSize
|
i += gidSize
|
||||||
self.glyphName = font.glyphOrder[glyphID]
|
self.glyphName = font.glyphOrder[glyphID]
|
||||||
|
|
||||||
|
if flags & VarComponentFlags.HAVE_CONDITION:
|
||||||
|
self.conditionSetIndex, i = _read_uint32var(data, i)
|
||||||
|
|
||||||
if flags & VarComponentFlags.HAVE_AXES:
|
if flags & VarComponentFlags.HAVE_AXES:
|
||||||
self.axisIndicesIndex, i = _read_uint32var(data, i)
|
self.axisIndicesIndex, i = _read_uint32var(data, i)
|
||||||
else:
|
else:
|
||||||
@ -244,6 +248,10 @@ class VarComponent:
|
|||||||
flags &= ~VarComponentFlags.GID_IS_24BIT
|
flags &= ~VarComponentFlags.GID_IS_24BIT
|
||||||
data.append(_packer[2](glyphID))
|
data.append(_packer[2](glyphID))
|
||||||
|
|
||||||
|
if self.conditionSetIndex is not None:
|
||||||
|
flags |= VarComponentFlags.HAVE_CONDITION
|
||||||
|
data.append(_write_uint32var(self.conditionSetIndex))
|
||||||
|
|
||||||
numAxes = len(self.axisValues)
|
numAxes = len(self.axisValues)
|
||||||
|
|
||||||
if numAxes:
|
if numAxes:
|
||||||
@ -293,6 +301,8 @@ class VarComponent:
|
|||||||
|
|
||||||
write("glyphName", self.glyphName)
|
write("glyphName", self.glyphName)
|
||||||
|
|
||||||
|
if self.conditionSetIndex is not None:
|
||||||
|
write("conditionSetIndex", self.conditionSetIndex)
|
||||||
if self.axisIndicesIndex is not None:
|
if self.axisIndicesIndex is not None:
|
||||||
write("axisIndicesIndex", self.axisIndicesIndex)
|
write("axisIndicesIndex", self.axisIndicesIndex)
|
||||||
if (
|
if (
|
||||||
@ -332,6 +342,8 @@ class VarComponent:
|
|||||||
|
|
||||||
if name == "glyphName":
|
if name == "glyphName":
|
||||||
self.glyphName = v
|
self.glyphName = v
|
||||||
|
elif name == "conditionSetIndex":
|
||||||
|
self.conditionSetIndex = safeEval(v)
|
||||||
elif name == "axisIndicesIndex":
|
elif name == "axisIndicesIndex":
|
||||||
self.axisIndicesIndex = safeEval(v)
|
self.axisIndicesIndex = safeEval(v)
|
||||||
elif name == "axisValues":
|
elif name == "axisValues":
|
||||||
|
@ -299,6 +299,28 @@ class _TTGlyphVARC(_TTGlyph):
|
|||||||
)
|
)
|
||||||
|
|
||||||
for comp in glyph.components:
|
for comp in glyph.components:
|
||||||
|
|
||||||
|
if comp.flags & VarComponentFlags.HAVE_CONDITION:
|
||||||
|
conditionSet = varc.ConditionSetList.ConditionSet[
|
||||||
|
comp.conditionSetIndex
|
||||||
|
]
|
||||||
|
# Evaluate condition
|
||||||
|
show = True
|
||||||
|
for condition in conditionSet.ConditionTable:
|
||||||
|
if condition.Format == 1:
|
||||||
|
axisIndex = condition.AxisIndex
|
||||||
|
axisTag = fvarAxes[axisIndex].axisTag
|
||||||
|
axisValue = self.glyphSet.location[axisTag]
|
||||||
|
minValue = condition.FilterRangeMinValue
|
||||||
|
maxValue = condition.FilterRangeMaxValue
|
||||||
|
if not (minValue <= axisValue <= maxValue):
|
||||||
|
show = False
|
||||||
|
break
|
||||||
|
else:
|
||||||
|
show = False # Unkonwn condition format
|
||||||
|
if not show:
|
||||||
|
continue
|
||||||
|
|
||||||
location = {}
|
location = {}
|
||||||
if comp.axisIndicesIndex is not None:
|
if comp.axisIndicesIndex is not None:
|
||||||
axisIndices = varc.AxisIndicesList.Item[comp.axisIndicesIndex]
|
axisIndices = varc.AxisIndicesList.Item[comp.axisIndicesIndex]
|
||||||
|
Binary file not shown.
@ -58,12 +58,12 @@
|
|||||||
<hmtx>
|
<hmtx>
|
||||||
<mtx name=".notdef" width="500" lsb="0"/>
|
<mtx name=".notdef" width="500" lsb="0"/>
|
||||||
<mtx name="glyph00003" width="460" lsb="0"/>
|
<mtx name="glyph00003" width="460" lsb="0"/>
|
||||||
<mtx name="glyph00004" width="460" lsb="0"/>
|
<mtx name="glyph00004" width="460" lsb="-3"/>
|
||||||
<mtx name="glyph00005" width="460" lsb="0"/>
|
<mtx name="glyph00005" width="460" lsb="0"/>
|
||||||
<mtx name="glyph00006" width="460" lsb="0"/>
|
<mtx name="glyph00006" width="460" lsb="340"/>
|
||||||
<mtx name="glyph00007" width="460" lsb="0"/>
|
<mtx name="glyph00007" width="460" lsb="0"/>
|
||||||
<mtx name="glyph00008" width="460" lsb="340"/>
|
<mtx name="glyph00008" width="460" lsb="0"/>
|
||||||
<mtx name="glyph00009" width="460" lsb="-3"/>
|
<mtx name="glyph00009" width="460" lsb="0"/>
|
||||||
<mtx name="glyph00010" width="460" lsb="45"/>
|
<mtx name="glyph00010" width="460" lsb="45"/>
|
||||||
<mtx name="uniAC00" width="460" lsb="0"/>
|
<mtx name="uniAC00" width="460" lsb="0"/>
|
||||||
<mtx name="uniAC01" width="460" lsb="0"/>
|
<mtx name="uniAC01" width="460" lsb="0"/>
|
||||||
@ -94,31 +94,7 @@
|
|||||||
|
|
||||||
<TTGlyph name="glyph00003"/><!-- contains no outline data -->
|
<TTGlyph name="glyph00003"/><!-- contains no outline data -->
|
||||||
|
|
||||||
<TTGlyph name="glyph00004"/><!-- contains no outline data -->
|
<TTGlyph name="glyph00004" xMin="-3" yMin="-17" xMax="420" yMax="349">
|
||||||
|
|
||||||
<TTGlyph name="glyph00005"/><!-- contains no outline data -->
|
|
||||||
|
|
||||||
<TTGlyph name="glyph00006"/><!-- contains no outline data -->
|
|
||||||
|
|
||||||
<TTGlyph name="glyph00007"/><!-- contains no outline data -->
|
|
||||||
|
|
||||||
<TTGlyph name="glyph00008" xMin="340" yMin="-41" xMax="450" yMax="402">
|
|
||||||
<contour>
|
|
||||||
<pt x="358" y="157" on="1"/>
|
|
||||||
<pt x="450" y="157" on="1"/>
|
|
||||||
<pt x="450" y="192" on="1"/>
|
|
||||||
<pt x="358" y="192" on="1"/>
|
|
||||||
</contour>
|
|
||||||
<contour>
|
|
||||||
<pt x="340" y="-41" on="1"/>
|
|
||||||
<pt x="378" y="-41" on="1"/>
|
|
||||||
<pt x="378" y="402" on="1"/>
|
|
||||||
<pt x="340" y="402" on="1"/>
|
|
||||||
</contour>
|
|
||||||
<instructions/>
|
|
||||||
</TTGlyph>
|
|
||||||
|
|
||||||
<TTGlyph name="glyph00009" xMin="-3" yMin="-17" xMax="420" yMax="349">
|
|
||||||
<contour>
|
<contour>
|
||||||
<pt x="3" y="-17" on="1"/>
|
<pt x="3" y="-17" on="1"/>
|
||||||
<pt x="100" y="-6" on="0"/>
|
<pt x="100" y="-6" on="0"/>
|
||||||
@ -140,6 +116,30 @@
|
|||||||
<instructions/>
|
<instructions/>
|
||||||
</TTGlyph>
|
</TTGlyph>
|
||||||
|
|
||||||
|
<TTGlyph name="glyph00005"/><!-- contains no outline data -->
|
||||||
|
|
||||||
|
<TTGlyph name="glyph00006" xMin="340" yMin="-41" xMax="450" yMax="402">
|
||||||
|
<contour>
|
||||||
|
<pt x="358" y="157" on="1"/>
|
||||||
|
<pt x="450" y="157" on="1"/>
|
||||||
|
<pt x="450" y="192" on="1"/>
|
||||||
|
<pt x="358" y="192" on="1"/>
|
||||||
|
</contour>
|
||||||
|
<contour>
|
||||||
|
<pt x="340" y="-41" on="1"/>
|
||||||
|
<pt x="378" y="-41" on="1"/>
|
||||||
|
<pt x="378" y="402" on="1"/>
|
||||||
|
<pt x="340" y="402" on="1"/>
|
||||||
|
</contour>
|
||||||
|
<instructions/>
|
||||||
|
</TTGlyph>
|
||||||
|
|
||||||
|
<TTGlyph name="glyph00007"/><!-- contains no outline data -->
|
||||||
|
|
||||||
|
<TTGlyph name="glyph00008"/><!-- contains no outline data -->
|
||||||
|
|
||||||
|
<TTGlyph name="glyph00009"/><!-- contains no outline data -->
|
||||||
|
|
||||||
<TTGlyph name="glyph00010" xMin="45" yMin="-17" xMax="420" yMax="349">
|
<TTGlyph name="glyph00010" xMin="45" yMin="-17" xMax="420" yMax="349">
|
||||||
<contour>
|
<contour>
|
||||||
<pt x="420" y="-17" on="1"/>
|
<pt x="420" y="-17" on="1"/>
|
||||||
@ -161,6 +161,36 @@
|
|||||||
</glyf>
|
</glyf>
|
||||||
|
|
||||||
<name>
|
<name>
|
||||||
|
<namerecord nameID="1" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||||
|
rcjk
|
||||||
|
</namerecord>
|
||||||
|
<namerecord nameID="2" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||||
|
varc
|
||||||
|
</namerecord>
|
||||||
|
<namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||||
|
Weight
|
||||||
|
</namerecord>
|
||||||
|
<namerecord nameID="257" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||||
|
OpticalSize
|
||||||
|
</namerecord>
|
||||||
|
<namerecord nameID="258" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||||
|
0000
|
||||||
|
</namerecord>
|
||||||
|
<namerecord nameID="259" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||||
|
0001
|
||||||
|
</namerecord>
|
||||||
|
<namerecord nameID="260" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||||
|
0002
|
||||||
|
</namerecord>
|
||||||
|
<namerecord nameID="261" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||||
|
0003
|
||||||
|
</namerecord>
|
||||||
|
<namerecord nameID="262" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||||
|
0004
|
||||||
|
</namerecord>
|
||||||
|
<namerecord nameID="263" platformID="1" platEncID="0" langID="0x0" unicode="True">
|
||||||
|
0005
|
||||||
|
</namerecord>
|
||||||
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
|
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
|
||||||
rcjk
|
rcjk
|
||||||
</namerecord>
|
</namerecord>
|
||||||
@ -191,30 +221,6 @@
|
|||||||
<namerecord nameID="263" platformID="3" platEncID="1" langID="0x409">
|
<namerecord nameID="263" platformID="3" platEncID="1" langID="0x409">
|
||||||
0005
|
0005
|
||||||
</namerecord>
|
</namerecord>
|
||||||
<namerecord nameID="264" platformID="3" platEncID="1" langID="0x409">
|
|
||||||
0006
|
|
||||||
</namerecord>
|
|
||||||
<namerecord nameID="265" platformID="3" platEncID="1" langID="0x409">
|
|
||||||
0007
|
|
||||||
</namerecord>
|
|
||||||
<namerecord nameID="266" platformID="3" platEncID="1" langID="0x409">
|
|
||||||
0008
|
|
||||||
</namerecord>
|
|
||||||
<namerecord nameID="267" platformID="3" platEncID="1" langID="0x409">
|
|
||||||
0009
|
|
||||||
</namerecord>
|
|
||||||
<namerecord nameID="268" platformID="3" platEncID="1" langID="0x409">
|
|
||||||
0010
|
|
||||||
</namerecord>
|
|
||||||
<namerecord nameID="269" platformID="3" platEncID="1" langID="0x409">
|
|
||||||
0011
|
|
||||||
</namerecord>
|
|
||||||
<namerecord nameID="270" platformID="3" platEncID="1" langID="0x409">
|
|
||||||
0012
|
|
||||||
</namerecord>
|
|
||||||
<namerecord nameID="271" platformID="3" platEncID="1" langID="0x409">
|
|
||||||
0013
|
|
||||||
</namerecord>
|
|
||||||
</name>
|
</name>
|
||||||
|
|
||||||
<post>
|
<post>
|
||||||
@ -235,10 +241,10 @@
|
|||||||
<Glyph value="uniAC00"/>
|
<Glyph value="uniAC00"/>
|
||||||
<Glyph value="uniAC01"/>
|
<Glyph value="uniAC01"/>
|
||||||
<Glyph value="glyph00003"/>
|
<Glyph value="glyph00003"/>
|
||||||
<Glyph value="glyph00004"/>
|
|
||||||
<Glyph value="glyph00005"/>
|
<Glyph value="glyph00005"/>
|
||||||
<Glyph value="glyph00006"/>
|
|
||||||
<Glyph value="glyph00007"/>
|
<Glyph value="glyph00007"/>
|
||||||
|
<Glyph value="glyph00008"/>
|
||||||
|
<Glyph value="glyph00009"/>
|
||||||
</Coverage>
|
</Coverage>
|
||||||
<MultiVarStore Format="1">
|
<MultiVarStore Format="1">
|
||||||
<Format value="1"/>
|
<Format value="1"/>
|
||||||
@ -285,88 +291,88 @@
|
|||||||
<VarRegionIndex index="0" value="0"/>
|
<VarRegionIndex index="0" value="0"/>
|
||||||
<VarRegionIndex index="1" value="1"/>
|
<VarRegionIndex index="1" value="1"/>
|
||||||
<VarRegionIndex index="2" value="2"/>
|
<VarRegionIndex index="2" value="2"/>
|
||||||
<Item index="0" value="[-964, 0, 406, 0, 16384, 0, 0, 0, 0]"/>
|
<Item index="0" value="[0, -327, 0, 1704, 0, 0, 0, 0, 0]"/>
|
||||||
<Item index="1" value="[-295, -327, 0, 1092, 273, 393, 0, 0, 0, 0, 0, 0, 0, 0, 0]"/>
|
<Item index="1" value="[0, 0, 0, 8, 0, 0]"/>
|
||||||
<Item index="2" value="[0, 0, 0, 6, 0, 0]"/>
|
<Item index="2" value="[-295, -327, 0, 1092, 273, 393, 0, 0, 0, 0, 0, 0, 0, 0, 0]"/>
|
||||||
<Item index="3" value="[-328, 0, 2185, 0, 1546, 0, 0, 0, 0]"/>
|
<Item index="3" value="[0, 0, 0, 6, 0, 0]"/>
|
||||||
<Item index="4" value="[0, -5, -26, 0, 0, 0]"/>
|
<Item index="4" value="[-964, 0, 406, 0, 16384, 0, 0, 0, 0]"/>
|
||||||
<Item index="5" value="[0, -327, 0, 1704, 0, 0, 0, 0, 0]"/>
|
<Item index="5" value="[-328, 0, 2185, 0, 1546, 0, 0, 0, 0]"/>
|
||||||
<Item index="6" value="[0, 0, 0, 8, 0, 0]"/>
|
<Item index="6" value="[0, -5, -26, 0, 0, 0]"/>
|
||||||
</MultiVarData>
|
</MultiVarData>
|
||||||
</MultiVarStore>
|
</MultiVarStore>
|
||||||
<AxisIndicesList>
|
<AxisIndicesList>
|
||||||
<Item index="0" value="[2, 3, 4]"/>
|
<Item index="0" value="[2, 3, 4]"/>
|
||||||
<Item index="1" value="[2, 3, 4, 5, 6]"/>
|
<Item index="1" value="[4]"/>
|
||||||
<Item index="2" value="[4]"/>
|
<Item index="2" value="[2, 3, 4, 5, 6]"/>
|
||||||
</AxisIndicesList>
|
</AxisIndicesList>
|
||||||
<VarCompositeGlyphs>
|
<VarCompositeGlyphs>
|
||||||
<VarCompositeGlyph index="0">
|
<VarCompositeGlyph index="0">
|
||||||
<VarComponent index="0">
|
<VarComponent index="0">
|
||||||
<glyphName value="glyph00007"/>
|
<glyphName value="glyph00003"/>
|
||||||
</VarComponent>
|
</VarComponent>
|
||||||
<VarComponent index="1">
|
<VarComponent index="1">
|
||||||
<glyphName value="glyph00003"/>
|
<glyphName value="glyph00005"/>
|
||||||
</VarComponent>
|
</VarComponent>
|
||||||
</VarCompositeGlyph>
|
</VarCompositeGlyph>
|
||||||
<VarCompositeGlyph index="1">
|
<VarCompositeGlyph index="1">
|
||||||
<VarComponent index="0">
|
<VarComponent index="0">
|
||||||
<glyphName value="glyph00005"/>
|
<glyphName value="glyph00007"/>
|
||||||
</VarComponent>
|
</VarComponent>
|
||||||
<VarComponent index="1">
|
<VarComponent index="1">
|
||||||
<glyphName value="glyph00004"/>
|
<glyphName value="glyph00008"/>
|
||||||
</VarComponent>
|
</VarComponent>
|
||||||
<VarComponent index="2">
|
<VarComponent index="2">
|
||||||
<glyphName value="glyph00006"/>
|
<glyphName value="glyph00009"/>
|
||||||
</VarComponent>
|
</VarComponent>
|
||||||
</VarCompositeGlyph>
|
</VarCompositeGlyph>
|
||||||
<VarCompositeGlyph index="2">
|
<VarCompositeGlyph index="2">
|
||||||
<VarComponent index="0">
|
<VarComponent index="0">
|
||||||
<glyphName value="glyph00008"/>
|
<glyphName value="glyph00004"/>
|
||||||
<axisIndicesIndex value="2"/>
|
<axisIndicesIndex value="0"/>
|
||||||
<axisValues value="[0.2159]"/>
|
<axisValues value="[-0.258, 0.05, -0.5178]"/>
|
||||||
<translateX value="-6.0"/>
|
<axisValuesVarIndex value="0"/>
|
||||||
|
<transformVarIndex value="1"/>
|
||||||
|
<translateX value="-5.0"/>
|
||||||
|
<translateY value="12.0"/>
|
||||||
</VarComponent>
|
</VarComponent>
|
||||||
</VarCompositeGlyph>
|
</VarCompositeGlyph>
|
||||||
<VarCompositeGlyph index="3">
|
<VarCompositeGlyph index="3">
|
||||||
<VarComponent index="0">
|
<VarComponent index="0">
|
||||||
<glyphName value="glyph00008"/>
|
<glyphName value="glyph00006"/>
|
||||||
<axisIndicesIndex value="0"/>
|
<axisIndicesIndex value="1"/>
|
||||||
<axisValues value="[-0.8047, 0.0, 0.4839]"/>
|
<axisValues value="[0.2159]"/>
|
||||||
<axisValuesVarIndex value="0"/>
|
<translateX value="-6.0"/>
|
||||||
<translateX value="-3.0"/>
|
|
||||||
</VarComponent>
|
</VarComponent>
|
||||||
</VarCompositeGlyph>
|
</VarCompositeGlyph>
|
||||||
<VarCompositeGlyph index="4">
|
<VarCompositeGlyph index="4">
|
||||||
<VarComponent index="0">
|
<VarComponent index="0">
|
||||||
<glyphName value="glyph00009"/>
|
<glyphName value="glyph00004"/>
|
||||||
<axisIndicesIndex value="1"/>
|
<axisIndicesIndex value="2"/>
|
||||||
<axisValues value="[-0.54, 0.04, -0.5178, 0.0, 0.0]"/>
|
<axisValues value="[-0.54, 0.04, -0.5178, 0.0, 0.0]"/>
|
||||||
<axisValuesVarIndex value="1"/>
|
<axisValuesVarIndex value="2"/>
|
||||||
<transformVarIndex value="2"/>
|
<transformVarIndex value="3"/>
|
||||||
<translateX value="-5.0"/>
|
<translateX value="-5.0"/>
|
||||||
<translateY value="24.0"/>
|
<translateY value="24.0"/>
|
||||||
</VarComponent>
|
</VarComponent>
|
||||||
</VarCompositeGlyph>
|
</VarCompositeGlyph>
|
||||||
<VarCompositeGlyph index="5">
|
<VarCompositeGlyph index="5">
|
||||||
<VarComponent index="0">
|
<VarComponent index="0">
|
||||||
<glyphName value="glyph00010"/>
|
<glyphName value="glyph00006"/>
|
||||||
<axisIndicesIndex value="0"/>
|
<axisIndicesIndex value="0"/>
|
||||||
<axisValues value="[-0.776, -0.3566, 0.0]"/>
|
<axisValues value="[-0.8047, 0.0, 0.4839]"/>
|
||||||
<axisValuesVarIndex value="3"/>
|
<axisValuesVarIndex value="4"/>
|
||||||
<transformVarIndex value="4"/>
|
<translateX value="-3.0"/>
|
||||||
<translateX value="53.0"/>
|
|
||||||
<translateY value="-231.0"/>
|
|
||||||
</VarComponent>
|
</VarComponent>
|
||||||
</VarCompositeGlyph>
|
</VarCompositeGlyph>
|
||||||
<VarCompositeGlyph index="6">
|
<VarCompositeGlyph index="6">
|
||||||
<VarComponent index="0">
|
<VarComponent index="0">
|
||||||
<glyphName value="glyph00009"/>
|
<glyphName value="glyph00010"/>
|
||||||
<axisIndicesIndex value="0"/>
|
<axisIndicesIndex value="0"/>
|
||||||
<axisValues value="[-0.258, 0.05, -0.5178]"/>
|
<axisValues value="[-0.776, -0.3566, 0.0]"/>
|
||||||
<axisValuesVarIndex value="5"/>
|
<axisValuesVarIndex value="5"/>
|
||||||
<transformVarIndex value="6"/>
|
<transformVarIndex value="6"/>
|
||||||
<translateX value="-5.0"/>
|
<translateX value="53.0"/>
|
||||||
<translateY value="12.0"/>
|
<translateY value="-231.0"/>
|
||||||
</VarComponent>
|
</VarComponent>
|
||||||
</VarCompositeGlyph>
|
</VarCompositeGlyph>
|
||||||
</VarCompositeGlyphs>
|
</VarCompositeGlyphs>
|
||||||
@ -453,201 +459,12 @@
|
|||||||
<MaxValue>1.0</MaxValue>
|
<MaxValue>1.0</MaxValue>
|
||||||
<AxisNameID>263</AxisNameID>
|
<AxisNameID>263</AxisNameID>
|
||||||
</Axis>
|
</Axis>
|
||||||
|
|
||||||
<!-- 0006 -->
|
|
||||||
<Axis>
|
|
||||||
<AxisTag>0006</AxisTag>
|
|
||||||
<Flags>0x0</Flags>
|
|
||||||
<MinValue>-1.0</MinValue>
|
|
||||||
<DefaultValue>0.0</DefaultValue>
|
|
||||||
<MaxValue>1.0</MaxValue>
|
|
||||||
<AxisNameID>264</AxisNameID>
|
|
||||||
</Axis>
|
|
||||||
|
|
||||||
<!-- 0007 -->
|
|
||||||
<Axis>
|
|
||||||
<AxisTag>0007</AxisTag>
|
|
||||||
<Flags>0x0</Flags>
|
|
||||||
<MinValue>-1.0</MinValue>
|
|
||||||
<DefaultValue>0.0</DefaultValue>
|
|
||||||
<MaxValue>1.0</MaxValue>
|
|
||||||
<AxisNameID>265</AxisNameID>
|
|
||||||
</Axis>
|
|
||||||
|
|
||||||
<!-- 0008 -->
|
|
||||||
<Axis>
|
|
||||||
<AxisTag>0008</AxisTag>
|
|
||||||
<Flags>0x0</Flags>
|
|
||||||
<MinValue>-1.0</MinValue>
|
|
||||||
<DefaultValue>0.0</DefaultValue>
|
|
||||||
<MaxValue>1.0</MaxValue>
|
|
||||||
<AxisNameID>266</AxisNameID>
|
|
||||||
</Axis>
|
|
||||||
|
|
||||||
<!-- 0009 -->
|
|
||||||
<Axis>
|
|
||||||
<AxisTag>0009</AxisTag>
|
|
||||||
<Flags>0x0</Flags>
|
|
||||||
<MinValue>-1.0</MinValue>
|
|
||||||
<DefaultValue>0.0</DefaultValue>
|
|
||||||
<MaxValue>1.0</MaxValue>
|
|
||||||
<AxisNameID>267</AxisNameID>
|
|
||||||
</Axis>
|
|
||||||
|
|
||||||
<!-- 0010 -->
|
|
||||||
<Axis>
|
|
||||||
<AxisTag>0010</AxisTag>
|
|
||||||
<Flags>0x0</Flags>
|
|
||||||
<MinValue>-1.0</MinValue>
|
|
||||||
<DefaultValue>0.0</DefaultValue>
|
|
||||||
<MaxValue>1.0</MaxValue>
|
|
||||||
<AxisNameID>268</AxisNameID>
|
|
||||||
</Axis>
|
|
||||||
|
|
||||||
<!-- 0011 -->
|
|
||||||
<Axis>
|
|
||||||
<AxisTag>0011</AxisTag>
|
|
||||||
<Flags>0x0</Flags>
|
|
||||||
<MinValue>-1.0</MinValue>
|
|
||||||
<DefaultValue>0.0</DefaultValue>
|
|
||||||
<MaxValue>1.0</MaxValue>
|
|
||||||
<AxisNameID>269</AxisNameID>
|
|
||||||
</Axis>
|
|
||||||
|
|
||||||
<!-- 0012 -->
|
|
||||||
<Axis>
|
|
||||||
<AxisTag>0012</AxisTag>
|
|
||||||
<Flags>0x0</Flags>
|
|
||||||
<MinValue>-1.0</MinValue>
|
|
||||||
<DefaultValue>0.0</DefaultValue>
|
|
||||||
<MaxValue>1.0</MaxValue>
|
|
||||||
<AxisNameID>270</AxisNameID>
|
|
||||||
</Axis>
|
|
||||||
|
|
||||||
<!-- 0013 -->
|
|
||||||
<Axis>
|
|
||||||
<AxisTag>0013</AxisTag>
|
|
||||||
<Flags>0x0</Flags>
|
|
||||||
<MinValue>-1.0</MinValue>
|
|
||||||
<DefaultValue>0.0</DefaultValue>
|
|
||||||
<MaxValue>1.0</MaxValue>
|
|
||||||
<AxisNameID>271</AxisNameID>
|
|
||||||
</Axis>
|
|
||||||
</fvar>
|
</fvar>
|
||||||
|
|
||||||
<gvar>
|
<gvar>
|
||||||
<version value="1"/>
|
<version value="1"/>
|
||||||
<reserved value="0"/>
|
<reserved value="0"/>
|
||||||
<glyphVariations glyph="glyph00008">
|
<glyphVariations glyph="glyph00004">
|
||||||
<tuple>
|
|
||||||
<coord axis="wght" value="1.0"/>
|
|
||||||
<delta pt="0" x="0" y="-15"/>
|
|
||||||
<delta pt="1" x="10" y="-15"/>
|
|
||||||
<delta pt="2" x="10" y="15"/>
|
|
||||||
<delta pt="3" x="0" y="15"/>
|
|
||||||
<delta pt="4" x="-25" y="-10"/>
|
|
||||||
<delta pt="5" x="10" y="-10"/>
|
|
||||||
<delta pt="6" x="10" y="10"/>
|
|
||||||
<delta pt="7" x="-25" y="10"/>
|
|
||||||
<delta pt="8" x="0" y="0"/>
|
|
||||||
<delta pt="9" x="0" y="0"/>
|
|
||||||
<delta pt="10" x="0" y="0"/>
|
|
||||||
<delta pt="11" x="0" y="0"/>
|
|
||||||
</tuple>
|
|
||||||
<tuple>
|
|
||||||
<coord axis="0000" value="-1.0"/>
|
|
||||||
<delta pt="0" x="0" y="0"/>
|
|
||||||
<delta pt="1" x="0" y="0"/>
|
|
||||||
<delta pt="2" x="0" y="0"/>
|
|
||||||
<delta pt="3" x="0" y="0"/>
|
|
||||||
<delta pt="4" x="0" y="229"/>
|
|
||||||
<delta pt="5" x="0" y="229"/>
|
|
||||||
<delta pt="6" x="0" y="0"/>
|
|
||||||
<delta pt="7" x="0" y="0"/>
|
|
||||||
<delta pt="8" x="0" y="0"/>
|
|
||||||
<delta pt="9" x="0" y="0"/>
|
|
||||||
<delta pt="10" x="0" y="0"/>
|
|
||||||
<delta pt="11" x="0" y="0"/>
|
|
||||||
</tuple>
|
|
||||||
<tuple>
|
|
||||||
<coord axis="0002" value="1.0"/>
|
|
||||||
<delta pt="0" x="0" y="202"/>
|
|
||||||
<delta pt="1" x="0" y="202"/>
|
|
||||||
<delta pt="2" x="0" y="202"/>
|
|
||||||
<delta pt="3" x="0" y="202"/>
|
|
||||||
<delta pt="4" x="0" y="0"/>
|
|
||||||
<delta pt="5" x="0" y="0"/>
|
|
||||||
<delta pt="6" x="0" y="0"/>
|
|
||||||
<delta pt="7" x="0" y="0"/>
|
|
||||||
<delta pt="8" x="0" y="0"/>
|
|
||||||
<delta pt="9" x="0" y="0"/>
|
|
||||||
<delta pt="10" x="0" y="0"/>
|
|
||||||
<delta pt="11" x="0" y="0"/>
|
|
||||||
</tuple>
|
|
||||||
<tuple>
|
|
||||||
<coord axis="0001" value="1.0"/>
|
|
||||||
<delta pt="0" x="0" y="0"/>
|
|
||||||
<delta pt="1" x="0" y="0"/>
|
|
||||||
<delta pt="2" x="0" y="0"/>
|
|
||||||
<delta pt="3" x="0" y="0"/>
|
|
||||||
<delta pt="4" x="0" y="6"/>
|
|
||||||
<delta pt="5" x="0" y="6"/>
|
|
||||||
<delta pt="6" x="0" y="0"/>
|
|
||||||
<delta pt="7" x="0" y="0"/>
|
|
||||||
<delta pt="8" x="0" y="0"/>
|
|
||||||
<delta pt="9" x="0" y="0"/>
|
|
||||||
<delta pt="10" x="0" y="0"/>
|
|
||||||
<delta pt="11" x="0" y="0"/>
|
|
||||||
</tuple>
|
|
||||||
<tuple>
|
|
||||||
<coord axis="0003" value="-1.0"/>
|
|
||||||
<delta pt="0" x="0" y="0"/>
|
|
||||||
<delta pt="1" x="-50" y="0"/>
|
|
||||||
<delta pt="2" x="-50" y="0"/>
|
|
||||||
<delta pt="3" x="0" y="0"/>
|
|
||||||
<delta pt="4" x="0" y="0"/>
|
|
||||||
<delta pt="5" x="0" y="0"/>
|
|
||||||
<delta pt="6" x="0" y="0"/>
|
|
||||||
<delta pt="7" x="0" y="0"/>
|
|
||||||
<delta pt="8" x="0" y="0"/>
|
|
||||||
<delta pt="9" x="0" y="0"/>
|
|
||||||
<delta pt="10" x="0" y="0"/>
|
|
||||||
<delta pt="11" x="0" y="0"/>
|
|
||||||
</tuple>
|
|
||||||
<tuple>
|
|
||||||
<coord axis="wght" value="1.0"/>
|
|
||||||
<coord axis="0000" value="-1.0"/>
|
|
||||||
<delta pt="0" x="0" y="0"/>
|
|
||||||
<delta pt="1" x="0" y="0"/>
|
|
||||||
<delta pt="2" x="0" y="0"/>
|
|
||||||
<delta pt="3" x="0" y="0"/>
|
|
||||||
<delta pt="4" x="0" y="0"/>
|
|
||||||
<delta pt="5" x="0" y="0"/>
|
|
||||||
<delta pt="6" x="0" y="0"/>
|
|
||||||
<delta pt="7" x="0" y="0"/>
|
|
||||||
<delta pt="8" x="0" y="0"/>
|
|
||||||
<delta pt="9" x="0" y="0"/>
|
|
||||||
<delta pt="10" x="0" y="0"/>
|
|
||||||
<delta pt="11" x="0" y="0"/>
|
|
||||||
</tuple>
|
|
||||||
<tuple>
|
|
||||||
<coord axis="wght" value="1.0"/>
|
|
||||||
<coord axis="0002" value="1.0"/>
|
|
||||||
<delta pt="0" x="0" y="0"/>
|
|
||||||
<delta pt="1" x="0" y="0"/>
|
|
||||||
<delta pt="2" x="0" y="0"/>
|
|
||||||
<delta pt="3" x="0" y="0"/>
|
|
||||||
<delta pt="4" x="0" y="0"/>
|
|
||||||
<delta pt="5" x="0" y="0"/>
|
|
||||||
<delta pt="6" x="0" y="0"/>
|
|
||||||
<delta pt="7" x="0" y="0"/>
|
|
||||||
<delta pt="8" x="0" y="0"/>
|
|
||||||
<delta pt="9" x="0" y="0"/>
|
|
||||||
<delta pt="10" x="0" y="0"/>
|
|
||||||
<delta pt="11" x="0" y="0"/>
|
|
||||||
</tuple>
|
|
||||||
</glyphVariations>
|
|
||||||
<glyphVariations glyph="glyph00009">
|
|
||||||
<tuple>
|
<tuple>
|
||||||
<coord axis="wght" value="1.0"/>
|
<coord axis="wght" value="1.0"/>
|
||||||
<delta pt="0" x="5" y="-10"/>
|
<delta pt="0" x="5" y="-10"/>
|
||||||
@ -1080,6 +897,115 @@
|
|||||||
<delta pt="19" x="0" y="0"/>
|
<delta pt="19" x="0" y="0"/>
|
||||||
</tuple>
|
</tuple>
|
||||||
</glyphVariations>
|
</glyphVariations>
|
||||||
|
<glyphVariations glyph="glyph00006">
|
||||||
|
<tuple>
|
||||||
|
<coord axis="wght" value="1.0"/>
|
||||||
|
<delta pt="0" x="0" y="-15"/>
|
||||||
|
<delta pt="1" x="10" y="-15"/>
|
||||||
|
<delta pt="2" x="10" y="15"/>
|
||||||
|
<delta pt="3" x="0" y="15"/>
|
||||||
|
<delta pt="4" x="-25" y="-10"/>
|
||||||
|
<delta pt="5" x="10" y="-10"/>
|
||||||
|
<delta pt="6" x="10" y="10"/>
|
||||||
|
<delta pt="7" x="-25" y="10"/>
|
||||||
|
<delta pt="8" x="0" y="0"/>
|
||||||
|
<delta pt="9" x="0" y="0"/>
|
||||||
|
<delta pt="10" x="0" y="0"/>
|
||||||
|
<delta pt="11" x="0" y="0"/>
|
||||||
|
</tuple>
|
||||||
|
<tuple>
|
||||||
|
<coord axis="0000" value="-1.0"/>
|
||||||
|
<delta pt="0" x="0" y="0"/>
|
||||||
|
<delta pt="1" x="0" y="0"/>
|
||||||
|
<delta pt="2" x="0" y="0"/>
|
||||||
|
<delta pt="3" x="0" y="0"/>
|
||||||
|
<delta pt="4" x="0" y="229"/>
|
||||||
|
<delta pt="5" x="0" y="229"/>
|
||||||
|
<delta pt="6" x="0" y="0"/>
|
||||||
|
<delta pt="7" x="0" y="0"/>
|
||||||
|
<delta pt="8" x="0" y="0"/>
|
||||||
|
<delta pt="9" x="0" y="0"/>
|
||||||
|
<delta pt="10" x="0" y="0"/>
|
||||||
|
<delta pt="11" x="0" y="0"/>
|
||||||
|
</tuple>
|
||||||
|
<tuple>
|
||||||
|
<coord axis="0002" value="1.0"/>
|
||||||
|
<delta pt="0" x="0" y="202"/>
|
||||||
|
<delta pt="1" x="0" y="202"/>
|
||||||
|
<delta pt="2" x="0" y="202"/>
|
||||||
|
<delta pt="3" x="0" y="202"/>
|
||||||
|
<delta pt="4" x="0" y="0"/>
|
||||||
|
<delta pt="5" x="0" y="0"/>
|
||||||
|
<delta pt="6" x="0" y="0"/>
|
||||||
|
<delta pt="7" x="0" y="0"/>
|
||||||
|
<delta pt="8" x="0" y="0"/>
|
||||||
|
<delta pt="9" x="0" y="0"/>
|
||||||
|
<delta pt="10" x="0" y="0"/>
|
||||||
|
<delta pt="11" x="0" y="0"/>
|
||||||
|
</tuple>
|
||||||
|
<tuple>
|
||||||
|
<coord axis="0001" value="1.0"/>
|
||||||
|
<delta pt="0" x="0" y="0"/>
|
||||||
|
<delta pt="1" x="0" y="0"/>
|
||||||
|
<delta pt="2" x="0" y="0"/>
|
||||||
|
<delta pt="3" x="0" y="0"/>
|
||||||
|
<delta pt="4" x="0" y="6"/>
|
||||||
|
<delta pt="5" x="0" y="6"/>
|
||||||
|
<delta pt="6" x="0" y="0"/>
|
||||||
|
<delta pt="7" x="0" y="0"/>
|
||||||
|
<delta pt="8" x="0" y="0"/>
|
||||||
|
<delta pt="9" x="0" y="0"/>
|
||||||
|
<delta pt="10" x="0" y="0"/>
|
||||||
|
<delta pt="11" x="0" y="0"/>
|
||||||
|
</tuple>
|
||||||
|
<tuple>
|
||||||
|
<coord axis="0003" value="-1.0"/>
|
||||||
|
<delta pt="0" x="0" y="0"/>
|
||||||
|
<delta pt="1" x="-50" y="0"/>
|
||||||
|
<delta pt="2" x="-50" y="0"/>
|
||||||
|
<delta pt="3" x="0" y="0"/>
|
||||||
|
<delta pt="4" x="0" y="0"/>
|
||||||
|
<delta pt="5" x="0" y="0"/>
|
||||||
|
<delta pt="6" x="0" y="0"/>
|
||||||
|
<delta pt="7" x="0" y="0"/>
|
||||||
|
<delta pt="8" x="0" y="0"/>
|
||||||
|
<delta pt="9" x="0" y="0"/>
|
||||||
|
<delta pt="10" x="0" y="0"/>
|
||||||
|
<delta pt="11" x="0" y="0"/>
|
||||||
|
</tuple>
|
||||||
|
<tuple>
|
||||||
|
<coord axis="wght" value="1.0"/>
|
||||||
|
<coord axis="0000" value="-1.0"/>
|
||||||
|
<delta pt="0" x="0" y="0"/>
|
||||||
|
<delta pt="1" x="0" y="0"/>
|
||||||
|
<delta pt="2" x="0" y="0"/>
|
||||||
|
<delta pt="3" x="0" y="0"/>
|
||||||
|
<delta pt="4" x="0" y="0"/>
|
||||||
|
<delta pt="5" x="0" y="0"/>
|
||||||
|
<delta pt="6" x="0" y="0"/>
|
||||||
|
<delta pt="7" x="0" y="0"/>
|
||||||
|
<delta pt="8" x="0" y="0"/>
|
||||||
|
<delta pt="9" x="0" y="0"/>
|
||||||
|
<delta pt="10" x="0" y="0"/>
|
||||||
|
<delta pt="11" x="0" y="0"/>
|
||||||
|
</tuple>
|
||||||
|
<tuple>
|
||||||
|
<coord axis="wght" value="1.0"/>
|
||||||
|
<coord axis="0002" value="1.0"/>
|
||||||
|
<delta pt="0" x="0" y="0"/>
|
||||||
|
<delta pt="1" x="0" y="0"/>
|
||||||
|
<delta pt="2" x="0" y="0"/>
|
||||||
|
<delta pt="3" x="0" y="0"/>
|
||||||
|
<delta pt="4" x="0" y="0"/>
|
||||||
|
<delta pt="5" x="0" y="0"/>
|
||||||
|
<delta pt="6" x="0" y="0"/>
|
||||||
|
<delta pt="7" x="0" y="0"/>
|
||||||
|
<delta pt="8" x="0" y="0"/>
|
||||||
|
<delta pt="9" x="0" y="0"/>
|
||||||
|
<delta pt="10" x="0" y="0"/>
|
||||||
|
<delta pt="11" x="0" y="0"/>
|
||||||
|
</tuple>
|
||||||
|
</glyphVariations>
|
||||||
<glyphVariations glyph="glyph00010">
|
<glyphVariations glyph="glyph00010">
|
||||||
<tuple>
|
<tuple>
|
||||||
<coord axis="wght" value="1.0"/>
|
<coord axis="wght" value="1.0"/>
|
||||||
|
Binary file not shown.
@ -9,7 +9,7 @@ DATA_DIR = os.path.join(CURR_DIR, "data")
|
|||||||
|
|
||||||
|
|
||||||
class VarCompositeTest(unittest.TestCase):
|
class VarCompositeTest(unittest.TestCase):
|
||||||
def test_trim_varComposite_glyph(self):
|
def test_basic(self):
|
||||||
font_path = os.path.join(DATA_DIR, "..", "..", "data", "varc-ac00-ac01.ttf")
|
font_path = os.path.join(DATA_DIR, "..", "..", "data", "varc-ac00-ac01.ttf")
|
||||||
font = TTFont(font_path)
|
font = TTFont(font_path)
|
||||||
varc = font["VARC"]
|
varc = font["VARC"]
|
||||||
@ -18,10 +18,10 @@ class VarCompositeTest(unittest.TestCase):
|
|||||||
"uniAC00",
|
"uniAC00",
|
||||||
"uniAC01",
|
"uniAC01",
|
||||||
"glyph00003",
|
"glyph00003",
|
||||||
"glyph00004",
|
|
||||||
"glyph00005",
|
"glyph00005",
|
||||||
"glyph00006",
|
|
||||||
"glyph00007",
|
"glyph00007",
|
||||||
|
"glyph00008",
|
||||||
|
"glyph00009",
|
||||||
]
|
]
|
||||||
|
|
||||||
font_path = os.path.join(DATA_DIR, "..", "..", "data", "varc-6868.ttf")
|
font_path = os.path.join(DATA_DIR, "..", "..", "data", "varc-6868.ttf")
|
||||||
@ -31,11 +31,11 @@ class VarCompositeTest(unittest.TestCase):
|
|||||||
assert varc.table.Coverage.glyphs == [
|
assert varc.table.Coverage.glyphs == [
|
||||||
"uni6868",
|
"uni6868",
|
||||||
"glyph00002",
|
"glyph00002",
|
||||||
"glyph00003",
|
"glyph00005",
|
||||||
"glyph00004",
|
"glyph00007",
|
||||||
]
|
]
|
||||||
|
|
||||||
def test_varComposite_basic(self):
|
def test_roundtrip(self):
|
||||||
font_path = os.path.join(DATA_DIR, "..", "..", "data", "varc-ac00-ac01.ttf")
|
font_path = os.path.join(DATA_DIR, "..", "..", "data", "varc-ac00-ac01.ttf")
|
||||||
font = TTFont(font_path)
|
font = TTFont(font_path)
|
||||||
tables = [
|
tables = [
|
||||||
|
@ -226,7 +226,7 @@ class TTGlyphSetTest(object):
|
|||||||
(
|
(
|
||||||
"addVarComponent",
|
"addVarComponent",
|
||||||
(
|
(
|
||||||
"glyph00007",
|
"glyph00003",
|
||||||
DecomposedTransform(
|
DecomposedTransform(
|
||||||
translateX=0,
|
translateX=0,
|
||||||
translateY=0,
|
translateY=0,
|
||||||
@ -244,7 +244,7 @@ class TTGlyphSetTest(object):
|
|||||||
(
|
(
|
||||||
"addVarComponent",
|
"addVarComponent",
|
||||||
(
|
(
|
||||||
"glyph00003",
|
"glyph00005",
|
||||||
DecomposedTransform(
|
DecomposedTransform(
|
||||||
translateX=0,
|
translateX=0,
|
||||||
translateY=0,
|
translateY=0,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user