[varLib tests] More tests
This commit is contained in:
parent
8444c92b9b
commit
bbecfe38c4
294
Tests/varLib/data/Build2.designspace
Normal file
294
Tests/varLib/data/Build2.designspace
Normal file
@ -0,0 +1,294 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<designspace format="3">
|
||||
<sources>
|
||||
<source familyname="Test Family" filename="master_ufo/TestFamily-Master0.ufo" name="master_0" stylename="Master0">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="0" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</source>
|
||||
<source familyname="Test Family" filename="master_ufo/TestFamily-Master1.ufo" name="master_1" stylename="Master1">
|
||||
<lib copy="1" />
|
||||
<groups copy="1" />
|
||||
<info copy="1" />
|
||||
<location>
|
||||
<dimension name="weight" xvalue="368" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</source>
|
||||
<source familyname="Test Family" filename="master_ufo/TestFamily-Master2.ufo" name="master_2" stylename="Master2">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</source>
|
||||
<source familyname="Test Family" filename="master_ufo/TestFamily-Master3.ufo" name="master_3" stylename="Master3">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
<dimension name="contrast" xvalue="100" />
|
||||
</location>
|
||||
</source>
|
||||
<source familyname="Test Family" filename="master_ufo/TestFamily-Master0.ufo" name="master_0" stylename="Master0">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="0" />
|
||||
<dimension name="contrast" xvalue="100" />
|
||||
</location>
|
||||
</source>
|
||||
<source familyname="Test Family" filename="master_ufo/TestFamily-Master4.ufo" name="master_4" stylename="Master4">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="368" />
|
||||
<dimension name="contrast" xvalue="100" />
|
||||
</location>
|
||||
</source>
|
||||
</sources>
|
||||
<instances>
|
||||
<instance familyname="Test Family" filename="instances/TestFamily-ExtraLight.ufo" name="instance_ExtraLight" postscriptfontname="TestFamily-ExtraLight" stylename="ExtraLight">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="0" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
<instance familyname="Test Family" filename="instances/TestFamily-Light.ufo" name="instance_Light" postscriptfontname="TestFamily-Light" stylename="Light">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="150" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
<instance familyname="Test Family" filename="instances/TestFamily-Regular.ufo" name="instance_Regular" postscriptfontname="TestFamily-Regular" stylename="Regular">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="394" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
<instance familyname="Test Family" filename="instances/TestFamily-Semibold.ufo" name="instance_Semibold" postscriptfontname="TestFamily-Semibold" stylename="Semibold">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="600" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
<instance familyname="Test Family" filename="instances/TestFamily-Bold.ufo" name="instance_Bold" postscriptfontname="TestFamily-Bold" stylename="Bold">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="824" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
<glyphs>
|
||||
<glyph name="dollar" unicode="0x24">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="824" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
<masters>
|
||||
<master glyphname="dollar.nostroke" source="master_0">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="0" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_1">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="368" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_2">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_3">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_0">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="0" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_4">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="368" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
</masters>
|
||||
</glyph>
|
||||
</glyphs>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
<instance familyname="Test Family" filename="instances/TestFamily-Black.ufo" name="instance_Black" postscriptfontname="TestFamily-Black" stylename="Black">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
<glyphs>
|
||||
<glyph name="dollar" unicode="0x24">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
<masters>
|
||||
<master glyphname="dollar.nostroke" source="master_0">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="0" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_1">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="368" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_2">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_3">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_0">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="0" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_4">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="368" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
</masters>
|
||||
</glyph>
|
||||
</glyphs>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
<instance familyname="Test Family" filename="instances/TestFamily-BlackMediumContrast.ufo" name="instance_BlackMediumContrast" postscriptfontname="TestFamily-BlackMediumContrast" stylename="Black Medium Contrast">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
<dimension name="contrast" xvalue="50" />
|
||||
</location>
|
||||
<glyphs>
|
||||
<glyph name="dollar" unicode="0x24">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
<masters>
|
||||
<master glyphname="dollar.nostroke" source="master_0">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="0" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_1">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="368" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_2">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_3">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_0">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="0" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_4">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="368" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
</masters>
|
||||
</glyph>
|
||||
</glyphs>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
<instance familyname="Test Family" filename="instances/TestFamily-BlackHighContrast.ufo" name="instance_BlackHighContrast" postscriptfontname="TestFamily-BlackHighContrast" stylename="Black High Contrast">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
<dimension name="contrast" xvalue="100" />
|
||||
</location>
|
||||
<glyphs>
|
||||
<glyph name="dollar" unicode="0x24">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
<masters>
|
||||
<master glyphname="dollar.nostroke" source="master_0">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="0" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_1">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="368" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_2">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_3">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_0">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="0" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
<master glyphname="dollar.nostroke" source="master_4">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="368" />
|
||||
<dimension name="contrast" xvalue="0" />
|
||||
</location>
|
||||
</master>
|
||||
</masters>
|
||||
</glyph>
|
||||
</glyphs>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
</instances>
|
||||
</designspace>
|
65
Tests/varLib/data/InterpolateLayout2.designspace
Normal file
65
Tests/varLib/data/InterpolateLayout2.designspace
Normal file
@ -0,0 +1,65 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<designspace format="3">
|
||||
<axes>
|
||||
<axis default="1000.0" maximum="1000.0" minimum="0.0" name="weight" tag="wght" />
|
||||
</axes>
|
||||
<sources>
|
||||
<source familyname="Test Family 2" filename="master_ufo/TestFamily2-Master0.ufo" name="master_0" stylename="Master0">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="0" />
|
||||
</location>
|
||||
</source>
|
||||
<source familyname="Test Family 2" filename="master_ufo/TestFamily2-Master1.ufo" name="master_1" stylename="Master1">
|
||||
<lib copy="1" />
|
||||
<groups copy="1" />
|
||||
<info copy="1" />
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
</location>
|
||||
</source>
|
||||
</sources>
|
||||
<instances>
|
||||
<instance familyname="Test Family 2" filename="instances/TestFamily2-ExtraLight.ufo" name="instance_ExtraLight" postscriptfontname="TestFamily2-ExtraLight" stylename="ExtraLight">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="0" />
|
||||
</location>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
<instance familyname="Test Family 2" filename="instances/TestFamily2-Light.ufo" name="instance_Light" postscriptfontname="TestFamily2-Light" stylename="Light">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="100" />
|
||||
</location>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
<instance familyname="Test Family 2" filename="instances/TestFamily2-Regular.ufo" name="instance_Regular" postscriptfontname="TestFamily2-Regular" stylename="Regular">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="368" />
|
||||
</location>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
<instance familyname="Test Family 2" filename="instances/TestFamily2-Semibold.ufo" name="instance_Semibold" postscriptfontname="TestFamily2-Semibold" stylename="Semibold">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="600" />
|
||||
</location>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
<instance familyname="Test Family 2" filename="instances/TestFamily2-Bold.ufo" name="instance_Bold" postscriptfontname="TestFamily2-Bold" stylename="Bold">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="824" />
|
||||
</location>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
<instance familyname="Test Family 2" filename="instances/TestFamily2-Black.ufo" name="instance_Black" postscriptfontname="TestFamily2-Black" stylename="Black">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
</location>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
</instances>
|
||||
</designspace>
|
62
Tests/varLib/data/InterpolateLayout3.designspace
Normal file
62
Tests/varLib/data/InterpolateLayout3.designspace
Normal file
@ -0,0 +1,62 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<designspace format="3">
|
||||
<sources>
|
||||
<source familyname="Test Family 2" filename="master_ufo/TestFamily2-Master0.ufo" name="master_0" stylename="Master0">
|
||||
<lib copy="1" />
|
||||
<groups copy="1" />
|
||||
<info copy="1" />
|
||||
<location>
|
||||
<dimension name="weight" xvalue="0" />
|
||||
</location>
|
||||
</source>
|
||||
<source familyname="Test Family 2" filename="master_ufo/TestFamily2-Master1.ufo" name="master_1" stylename="Master1">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
</location>
|
||||
</source>
|
||||
</sources>
|
||||
<instances>
|
||||
<instance familyname="Test Family 2" filename="instances/TestFamily2-ExtraLight.ufo" name="instance_ExtraLight" postscriptfontname="TestFamily2-ExtraLight" stylename="ExtraLight">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="0" />
|
||||
</location>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
<instance familyname="Test Family 2" filename="instances/TestFamily2-Light.ufo" name="instance_Light" postscriptfontname="TestFamily2-Light" stylename="Light">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="100" />
|
||||
</location>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
<instance familyname="Test Family 2" filename="instances/TestFamily2-Regular.ufo" name="instance_Regular" postscriptfontname="TestFamily2-Regular" stylename="Regular">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="368" />
|
||||
</location>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
<instance familyname="Test Family 2" filename="instances/TestFamily2-Semibold.ufo" name="instance_Semibold" postscriptfontname="TestFamily2-Semibold" stylename="Semibold">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="600" />
|
||||
</location>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
<instance familyname="Test Family 2" filename="instances/TestFamily2-Bold.ufo" name="instance_Bold" postscriptfontname="TestFamily2-Bold" stylename="Bold">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="824" />
|
||||
</location>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
<instance familyname="Test Family 2" filename="instances/TestFamily2-Black.ufo" name="instance_Black" postscriptfontname="TestFamily2-Black" stylename="Black">
|
||||
<location>
|
||||
<dimension name="weight" xvalue="1000" />
|
||||
</location>
|
||||
<kerning />
|
||||
<info />
|
||||
</instance>
|
||||
</instances>
|
||||
</designspace>
|
768
Tests/varLib/data/test_results/Build3.ttx
Normal file
768
Tests/varLib/data/test_results/Build3.ttx
Normal file
@ -0,0 +1,768 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="3.8">
|
||||
|
||||
<GDEF>
|
||||
<Version value="0x00010003"/>
|
||||
<VarStore Format="1">
|
||||
<Format value="1"/>
|
||||
<VarRegionList>
|
||||
<!-- RegionAxisCount=1 -->
|
||||
<!-- RegionCount=1 -->
|
||||
<Region index="0">
|
||||
<VarRegionAxis index="0">
|
||||
<StartCoord value="0.0"/>
|
||||
<PeakCoord value="1.0"/>
|
||||
<EndCoord value="1.0"/>
|
||||
</VarRegionAxis>
|
||||
</Region>
|
||||
</VarRegionList>
|
||||
<!-- VarDataCount=1 -->
|
||||
<VarData index="0">
|
||||
<!-- ItemCount=0 -->
|
||||
<NumShorts value="0"/>
|
||||
<!-- VarRegionCount=1 -->
|
||||
<VarRegionIndex index="0" value="0"/>
|
||||
</VarData>
|
||||
</VarStore>
|
||||
</GDEF>
|
||||
|
||||
<HVAR>
|
||||
<Version value="0x00010000"/>
|
||||
<VarStore Format="1">
|
||||
<Format value="1"/>
|
||||
<VarRegionList>
|
||||
<!-- RegionAxisCount=1 -->
|
||||
<!-- RegionCount=1 -->
|
||||
<Region index="0">
|
||||
<VarRegionAxis index="0">
|
||||
<StartCoord value="0.0"/>
|
||||
<PeakCoord value="1.0"/>
|
||||
<EndCoord value="1.0"/>
|
||||
</VarRegionAxis>
|
||||
</Region>
|
||||
</VarRegionList>
|
||||
<!-- VarDataCount=1 -->
|
||||
<VarData index="0">
|
||||
<!-- ItemCount=17 -->
|
||||
<NumShorts value="1"/>
|
||||
<!-- VarRegionCount=1 -->
|
||||
<VarRegionIndex index="0" value="0"/>
|
||||
<Item index="0" value="[80]"/>
|
||||
<Item index="1" value="[0]"/>
|
||||
<Item index="2" value="[64]"/>
|
||||
<Item index="3" value="[50]"/>
|
||||
<Item index="4" value="[40]"/>
|
||||
<Item index="5" value="[108]"/>
|
||||
<Item index="6" value="[56]"/>
|
||||
<Item index="7" value="[98]"/>
|
||||
<Item index="8" value="[206]"/>
|
||||
<Item index="9" value="[40]"/>
|
||||
<Item index="10" value="[72]"/>
|
||||
<Item index="11" value="[128]"/>
|
||||
<Item index="12" value="[-18]"/>
|
||||
<Item index="13" value="[0]"/>
|
||||
<Item index="14" value="[0]"/>
|
||||
<Item index="15" value="[0]"/>
|
||||
<Item index="16" value="[0]"/>
|
||||
</VarData>
|
||||
</VarStore>
|
||||
</HVAR>
|
||||
|
||||
<fvar>
|
||||
|
||||
<!-- Weight -->
|
||||
<Axis>
|
||||
<AxisTag>wght</AxisTag>
|
||||
<MinValue>0.0</MinValue>
|
||||
<DefaultValue>0.0</DefaultValue>
|
||||
<MaxValue>1000.0</MaxValue>
|
||||
<AxisNameID>257</AxisNameID>
|
||||
</Axis>
|
||||
|
||||
<!-- ExtraLight -->
|
||||
<!-- PostScript: TestFamily2-ExtraLight -->
|
||||
<NamedInstance postscriptNameID="259" subfamilyNameID="258">
|
||||
<coord axis="wght" value="0.0"/>
|
||||
</NamedInstance>
|
||||
|
||||
<!-- Light -->
|
||||
<!-- PostScript: TestFamily2-Light -->
|
||||
<NamedInstance postscriptNameID="261" subfamilyNameID="260">
|
||||
<coord axis="wght" value="100.0"/>
|
||||
</NamedInstance>
|
||||
|
||||
<!-- Regular -->
|
||||
<!-- PostScript: TestFamily2-Regular -->
|
||||
<NamedInstance postscriptNameID="263" subfamilyNameID="262">
|
||||
<coord axis="wght" value="368.0"/>
|
||||
</NamedInstance>
|
||||
|
||||
<!-- Semibold -->
|
||||
<!-- PostScript: TestFamily2-Semibold -->
|
||||
<NamedInstance postscriptNameID="265" subfamilyNameID="264">
|
||||
<coord axis="wght" value="600.0"/>
|
||||
</NamedInstance>
|
||||
|
||||
<!-- Bold -->
|
||||
<!-- PostScript: TestFamily2-Bold -->
|
||||
<NamedInstance postscriptNameID="267" subfamilyNameID="266">
|
||||
<coord axis="wght" value="824.0"/>
|
||||
</NamedInstance>
|
||||
|
||||
<!-- Black -->
|
||||
<!-- PostScript: TestFamily2-Black -->
|
||||
<NamedInstance postscriptNameID="269" subfamilyNameID="268">
|
||||
<coord axis="wght" value="1000.0"/>
|
||||
</NamedInstance>
|
||||
</fvar>
|
||||
|
||||
<gvar>
|
||||
<version value="1"/>
|
||||
<reserved value="0"/>
|
||||
<glyphVariations glyph=".notdef">
|
||||
<tuple>
|
||||
<coord axis="wght" value="1.0"/>
|
||||
<delta pt="0" x="-20" y="0"/>
|
||||
<delta pt="1" x="-20" y="0"/>
|
||||
<delta pt="2" x="100" y="0"/>
|
||||
<delta pt="3" x="100" y="0"/>
|
||||
<delta pt="4" x="144" y="72"/>
|
||||
<delta pt="5" x="-60" y="72"/>
|
||||
<delta pt="6" x="14" y="-48"/>
|
||||
<delta pt="7" x="40" y="-58"/>
|
||||
<delta pt="8" x="40" y="-58"/>
|
||||
<delta pt="9" x="68" y="-48"/>
|
||||
<delta pt="10" x="40" y="58"/>
|
||||
<delta pt="11" x="40" y="58"/>
|
||||
<delta pt="12" x="26" y="62"/>
|
||||
<delta pt="13" x="-50" y="-70"/>
|
||||
<delta pt="14" x="132" y="-70"/>
|
||||
<delta pt="15" x="56" y="62"/>
|
||||
<delta pt="16" x="54" y="98"/>
|
||||
<delta pt="17" x="-18" y="0"/>
|
||||
<delta pt="18" x="54" y="-102"/>
|
||||
<delta pt="19" x="28" y="98"/>
|
||||
<delta pt="20" x="28" y="-102"/>
|
||||
<delta pt="21" x="98" y="0"/>
|
||||
<delta pt="22" x="0" y="0"/>
|
||||
<delta pt="23" x="80" y="0"/>
|
||||
<delta pt="24" x="0" y="0"/>
|
||||
<delta pt="25" x="0" y="0"/>
|
||||
</tuple>
|
||||
</glyphVariations>
|
||||
<glyphVariations glyph="space">
|
||||
<tuple>
|
||||
<coord axis="wght" 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"/>
|
||||
</tuple>
|
||||
</glyphVariations>
|
||||
<glyphVariations glyph="A">
|
||||
<tuple>
|
||||
<coord axis="wght" value="1.0"/>
|
||||
<delta pt="0" x="-20" y="0"/>
|
||||
<delta pt="1" x="-58" y="-10"/>
|
||||
<delta pt="2" x="122" y="-10"/>
|
||||
<delta pt="3" x="84" y="0"/>
|
||||
<delta pt="4" x="-64" y="0"/>
|
||||
<delta pt="5" x="0" y="-80"/>
|
||||
<delta pt="6" x="9" y="-94"/>
|
||||
<delta pt="7" x="22" y="-91"/>
|
||||
<delta pt="8" x="28" y="-104"/>
|
||||
<delta pt="9" x="28" y="-104"/>
|
||||
<delta pt="10" x="36" y="-92"/>
|
||||
<delta pt="11" x="49" y="-94"/>
|
||||
<delta pt="12" x="58" y="-80"/>
|
||||
<delta pt="13" x="124" y="0"/>
|
||||
<delta pt="14" x="20" y="-98"/>
|
||||
<delta pt="15" x="20" y="7"/>
|
||||
<delta pt="16" x="45" y="7"/>
|
||||
<delta pt="17" x="45" y="-98"/>
|
||||
<delta pt="18" x="0" y="0"/>
|
||||
<delta pt="19" x="64" y="0"/>
|
||||
<delta pt="20" x="0" y="-10"/>
|
||||
<delta pt="21" x="0" y="0"/>
|
||||
</tuple>
|
||||
</glyphVariations>
|
||||
<glyphVariations glyph="a">
|
||||
<tuple>
|
||||
<coord axis="wght" value="1.0"/>
|
||||
<delta pt="0" x="-10" y="0"/>
|
||||
<delta pt="1" x="-24" y="0"/>
|
||||
<delta pt="2" x="-22" y="31"/>
|
||||
<delta pt="3" x="-22" y="25"/>
|
||||
<delta pt="4" x="-22" y="23"/>
|
||||
<delta pt="5" x="-46" y="29"/>
|
||||
<delta pt="6" x="-64" y="26"/>
|
||||
<delta pt="7" x="-69" y="-5"/>
|
||||
<delta pt="8" x="-58" y="-86"/>
|
||||
<delta pt="9" x="-16" y="-86"/>
|
||||
<delta pt="10" x="8" y="-86"/>
|
||||
<delta pt="11" x="31" y="-67"/>
|
||||
<delta pt="12" x="14" y="-70"/>
|
||||
<delta pt="13" x="-30" y="18"/>
|
||||
<delta pt="14" x="0" y="34"/>
|
||||
<delta pt="15" x="16" y="22"/>
|
||||
<delta pt="16" x="16" y="22"/>
|
||||
<delta pt="17" x="30" y="22"/>
|
||||
<delta pt="18" x="78" y="19"/>
|
||||
<delta pt="19" x="78" y="-32"/>
|
||||
<delta pt="20" x="78" y="0"/>
|
||||
<delta pt="21" x="-36" y="0"/>
|
||||
<delta pt="22" x="-44" y="-16"/>
|
||||
<delta pt="23" x="-46" y="-16"/>
|
||||
<delta pt="24" x="-38" y="-13"/>
|
||||
<delta pt="25" x="-18" y="0"/>
|
||||
<delta pt="26" x="48" y="104"/>
|
||||
<delta pt="27" x="25" y="104"/>
|
||||
<delta pt="28" x="-30" y="81"/>
|
||||
<delta pt="29" x="-64" y="56"/>
|
||||
<delta pt="30" x="-64" y="-50"/>
|
||||
<delta pt="31" x="32" y="-41"/>
|
||||
<delta pt="32" x="110" y="-3"/>
|
||||
<delta pt="33" x="110" y="38"/>
|
||||
<delta pt="34" x="110" y="77"/>
|
||||
<delta pt="35" x="70" y="104"/>
|
||||
<delta pt="36" x="0" y="0"/>
|
||||
<delta pt="37" x="50" y="0"/>
|
||||
<delta pt="38" x="0" y="22"/>
|
||||
<delta pt="39" x="0" y="0"/>
|
||||
</tuple>
|
||||
</glyphVariations>
|
||||
<glyphVariations glyph="d">
|
||||
<tuple>
|
||||
<coord axis="wght" value="1.0"/>
|
||||
<delta pt="0" x="-12" y="0"/>
|
||||
<delta pt="1" x="-15" y="0"/>
|
||||
<delta pt="2" x="-18" y="12"/>
|
||||
<delta pt="3" x="-18" y="12"/>
|
||||
<delta pt="4" x="-18" y="19"/>
|
||||
<delta pt="5" x="-17" y="22"/>
|
||||
<delta pt="6" x="-28" y="22"/>
|
||||
<delta pt="7" x="-32" y="22"/>
|
||||
<delta pt="8" x="-44" y="26"/>
|
||||
<delta pt="9" x="-60" y="32"/>
|
||||
<delta pt="10" x="-64" y="14"/>
|
||||
<delta pt="11" x="-64" y="-26"/>
|
||||
<delta pt="12" x="78" y="-26"/>
|
||||
<delta pt="13" x="78" y="0"/>
|
||||
<delta pt="14" x="-36" y="0"/>
|
||||
<delta pt="15" x="-44" y="-18"/>
|
||||
<delta pt="16" x="-46" y="-18"/>
|
||||
<delta pt="17" x="-42" y="-14"/>
|
||||
<delta pt="18" x="-29" y="0"/>
|
||||
<delta pt="19" x="32" y="112"/>
|
||||
<delta pt="20" x="10" y="112"/>
|
||||
<delta pt="21" x="-38" y="83"/>
|
||||
<delta pt="22" x="-64" y="64"/>
|
||||
<delta pt="23" x="-64" y="-48"/>
|
||||
<delta pt="24" x="-39" y="-70"/>
|
||||
<delta pt="25" x="-6" y="-90"/>
|
||||
<delta pt="26" x="16" y="-90"/>
|
||||
<delta pt="27" x="65" y="-90"/>
|
||||
<delta pt="28" x="126" y="-13"/>
|
||||
<delta pt="29" x="126" y="14"/>
|
||||
<delta pt="30" x="126" y="45"/>
|
||||
<delta pt="31" x="79" y="112"/>
|
||||
<delta pt="32" x="0" y="0"/>
|
||||
<delta pt="33" x="40" y="0"/>
|
||||
<delta pt="34" x="0" y="-26"/>
|
||||
<delta pt="35" x="0" y="0"/>
|
||||
</tuple>
|
||||
</glyphVariations>
|
||||
<glyphVariations glyph="f">
|
||||
<tuple>
|
||||
<coord axis="wght" value="1.0"/>
|
||||
<delta pt="0" x="-12" y="0"/>
|
||||
<delta pt="1" x="-12" y="-90"/>
|
||||
<delta pt="2" x="-12" y="-80"/>
|
||||
<delta pt="3" x="16" y="-26"/>
|
||||
<delta pt="4" x="76" y="-26"/>
|
||||
<delta pt="5" x="95" y="-26"/>
|
||||
<delta pt="6" x="116" y="-30"/>
|
||||
<delta pt="7" x="116" y="-28"/>
|
||||
<delta pt="8" x="96" y="-128"/>
|
||||
<delta pt="9" x="97" y="-132"/>
|
||||
<delta pt="10" x="104" y="-132"/>
|
||||
<delta pt="11" x="120" y="-132"/>
|
||||
<delta pt="12" x="130" y="-99"/>
|
||||
<delta pt="13" x="130" y="-80"/>
|
||||
<delta pt="14" x="130" y="0"/>
|
||||
<delta pt="15" x="-12" y="-84"/>
|
||||
<delta pt="16" x="-12" y="20"/>
|
||||
<delta pt="17" x="-2" y="22"/>
|
||||
<delta pt="18" x="100" y="22"/>
|
||||
<delta pt="19" x="100" y="-84"/>
|
||||
<delta pt="20" x="0" y="0"/>
|
||||
<delta pt="21" x="108" y="0"/>
|
||||
<delta pt="22" x="0" y="-26"/>
|
||||
<delta pt="23" x="0" y="0"/>
|
||||
</tuple>
|
||||
</glyphVariations>
|
||||
<glyphVariations glyph="n">
|
||||
<tuple>
|
||||
<coord axis="wght" value="1.0"/>
|
||||
<delta pt="0" x="-38" y="0"/>
|
||||
<delta pt="1" x="-38" y="22"/>
|
||||
<delta pt="2" x="76" y="22"/>
|
||||
<delta pt="3" x="84" y="38"/>
|
||||
<delta pt="4" x="86" y="38"/>
|
||||
<delta pt="5" x="78" y="28"/>
|
||||
<delta pt="6" x="77" y="22"/>
|
||||
<delta pt="7" x="78" y="22"/>
|
||||
<delta pt="8" x="86" y="22"/>
|
||||
<delta pt="9" x="90" y="0"/>
|
||||
<delta pt="10" x="90" y="0"/>
|
||||
<delta pt="11" x="90" y="0"/>
|
||||
<delta pt="12" x="-52" y="0"/>
|
||||
<delta pt="13" x="-52" y="-18"/>
|
||||
<delta pt="14" x="-52" y="-50"/>
|
||||
<delta pt="15" x="-22" y="-96"/>
|
||||
<delta pt="16" x="14" y="-96"/>
|
||||
<delta pt="17" x="35" y="-96"/>
|
||||
<delta pt="18" x="78" y="-68"/>
|
||||
<delta pt="19" x="104" y="-38"/>
|
||||
<delta pt="20" x="104" y="0"/>
|
||||
<delta pt="21" x="0" y="0"/>
|
||||
<delta pt="22" x="56" y="0"/>
|
||||
<delta pt="23" x="0" y="22"/>
|
||||
<delta pt="24" x="0" y="0"/>
|
||||
</tuple>
|
||||
</glyphVariations>
|
||||
<glyphVariations glyph="t">
|
||||
<tuple>
|
||||
<coord axis="wght" value="1.0"/>
|
||||
<delta pt="0" x="46" y="0"/>
|
||||
<delta pt="1" x="14" y="0"/>
|
||||
<delta pt="2" x="-26" y="36"/>
|
||||
<delta pt="3" x="-26" y="66"/>
|
||||
<delta pt="4" x="-26" y="-84"/>
|
||||
<delta pt="5" x="-16" y="-84"/>
|
||||
<delta pt="6" x="-16" y="20"/>
|
||||
<delta pt="7" x="-16" y="22"/>
|
||||
<delta pt="8" x="0" y="12"/>
|
||||
<delta pt="9" x="116" y="12"/>
|
||||
<delta pt="10" x="116" y="22"/>
|
||||
<delta pt="11" x="88" y="22"/>
|
||||
<delta pt="12" x="88" y="-84"/>
|
||||
<delta pt="13" x="116" y="-84"/>
|
||||
<delta pt="14" x="116" y="73"/>
|
||||
<delta pt="15" x="116" y="78"/>
|
||||
<delta pt="16" x="120" y="106"/>
|
||||
<delta pt="17" x="92" y="106"/>
|
||||
<delta pt="18" x="90" y="106"/>
|
||||
<delta pt="19" x="79" y="101"/>
|
||||
<delta pt="20" x="74" y="98"/>
|
||||
<delta pt="21" x="90" y="0"/>
|
||||
<delta pt="22" x="91" y="2"/>
|
||||
<delta pt="23" x="75" y="0"/>
|
||||
<delta pt="24" x="0" y="0"/>
|
||||
<delta pt="25" x="98" y="0"/>
|
||||
<delta pt="26" x="0" y="12"/>
|
||||
<delta pt="27" x="0" y="0"/>
|
||||
</tuple>
|
||||
</glyphVariations>
|
||||
<glyphVariations glyph="f_t">
|
||||
<tuple>
|
||||
<coord axis="wght" value="1.0"/>
|
||||
<delta pt="0" x="-12" y="0"/>
|
||||
<delta pt="1" x="-12" y="-90"/>
|
||||
<delta pt="2" x="-12" y="-80"/>
|
||||
<delta pt="3" x="16" y="-26"/>
|
||||
<delta pt="4" x="76" y="-26"/>
|
||||
<delta pt="5" x="95" y="-26"/>
|
||||
<delta pt="6" x="116" y="-30"/>
|
||||
<delta pt="7" x="116" y="-28"/>
|
||||
<delta pt="8" x="96" y="-128"/>
|
||||
<delta pt="9" x="97" y="-132"/>
|
||||
<delta pt="10" x="104" y="-132"/>
|
||||
<delta pt="11" x="120" y="-132"/>
|
||||
<delta pt="12" x="130" y="-99"/>
|
||||
<delta pt="13" x="130" y="-80"/>
|
||||
<delta pt="14" x="130" y="0"/>
|
||||
<delta pt="15" x="154" y="0"/>
|
||||
<delta pt="16" x="122" y="0"/>
|
||||
<delta pt="17" x="82" y="36"/>
|
||||
<delta pt="18" x="82" y="66"/>
|
||||
<delta pt="19" x="82" y="-84"/>
|
||||
<delta pt="20" x="-12" y="-84"/>
|
||||
<delta pt="21" x="-12" y="20"/>
|
||||
<delta pt="22" x="-2" y="22"/>
|
||||
<delta pt="23" x="92" y="22"/>
|
||||
<delta pt="24" x="108" y="12"/>
|
||||
<delta pt="25" x="224" y="12"/>
|
||||
<delta pt="26" x="224" y="22"/>
|
||||
<delta pt="27" x="196" y="22"/>
|
||||
<delta pt="28" x="196" y="-84"/>
|
||||
<delta pt="29" x="224" y="-84"/>
|
||||
<delta pt="30" x="224" y="73"/>
|
||||
<delta pt="31" x="224" y="78"/>
|
||||
<delta pt="32" x="228" y="106"/>
|
||||
<delta pt="33" x="200" y="106"/>
|
||||
<delta pt="34" x="198" y="106"/>
|
||||
<delta pt="35" x="187" y="101"/>
|
||||
<delta pt="36" x="182" y="98"/>
|
||||
<delta pt="37" x="198" y="0"/>
|
||||
<delta pt="38" x="199" y="2"/>
|
||||
<delta pt="39" x="183" y="0"/>
|
||||
<delta pt="40" x="0" y="0"/>
|
||||
<delta pt="41" x="206" y="0"/>
|
||||
<delta pt="42" x="0" y="-26"/>
|
||||
<delta pt="43" x="0" y="0"/>
|
||||
</tuple>
|
||||
</glyphVariations>
|
||||
<glyphVariations glyph="a.alt">
|
||||
<tuple>
|
||||
<coord axis="wght" value="1.0"/>
|
||||
<delta pt="0" x="-12" y="0"/>
|
||||
<delta pt="1" x="-15" y="0"/>
|
||||
<delta pt="2" x="-18" y="12"/>
|
||||
<delta pt="3" x="-18" y="12"/>
|
||||
<delta pt="4" x="-18" y="19"/>
|
||||
<delta pt="5" x="-13" y="22"/>
|
||||
<delta pt="6" x="-24" y="22"/>
|
||||
<delta pt="7" x="-32" y="22"/>
|
||||
<delta pt="8" x="-36" y="24"/>
|
||||
<delta pt="9" x="-42" y="18"/>
|
||||
<delta pt="10" x="-40" y="18"/>
|
||||
<delta pt="11" x="-28" y="22"/>
|
||||
<delta pt="12" x="78" y="22"/>
|
||||
<delta pt="13" x="78" y="0"/>
|
||||
<delta pt="14" x="-36" y="0"/>
|
||||
<delta pt="15" x="-44" y="-18"/>
|
||||
<delta pt="16" x="-46" y="-18"/>
|
||||
<delta pt="17" x="-42" y="-14"/>
|
||||
<delta pt="18" x="-29" y="0"/>
|
||||
<delta pt="19" x="32" y="112"/>
|
||||
<delta pt="20" x="10" y="112"/>
|
||||
<delta pt="21" x="-38" y="83"/>
|
||||
<delta pt="22" x="-64" y="64"/>
|
||||
<delta pt="23" x="-64" y="-48"/>
|
||||
<delta pt="24" x="-39" y="-70"/>
|
||||
<delta pt="25" x="-6" y="-90"/>
|
||||
<delta pt="26" x="16" y="-90"/>
|
||||
<delta pt="27" x="65" y="-90"/>
|
||||
<delta pt="28" x="126" y="-13"/>
|
||||
<delta pt="29" x="126" y="14"/>
|
||||
<delta pt="30" x="126" y="45"/>
|
||||
<delta pt="31" x="79" y="112"/>
|
||||
<delta pt="32" x="0" y="0"/>
|
||||
<delta pt="33" x="40" y="0"/>
|
||||
<delta pt="34" x="0" y="22"/>
|
||||
<delta pt="35" x="0" y="0"/>
|
||||
</tuple>
|
||||
</glyphVariations>
|
||||
<glyphVariations glyph="A.sc">
|
||||
<tuple>
|
||||
<coord axis="wght" value="1.0"/>
|
||||
<delta pt="0" x="-20" y="0"/>
|
||||
<delta pt="1" x="-52" y="22"/>
|
||||
<delta pt="2" x="125" y="22"/>
|
||||
<delta pt="3" x="92" y="0"/>
|
||||
<delta pt="4" x="-54" y="0"/>
|
||||
<delta pt="5" x="5" y="-60"/>
|
||||
<delta pt="6" x="14" y="-71"/>
|
||||
<delta pt="7" x="26" y="-58"/>
|
||||
<delta pt="8" x="32" y="-66"/>
|
||||
<delta pt="9" x="32" y="-66"/>
|
||||
<delta pt="10" x="40" y="-58"/>
|
||||
<delta pt="11" x="52" y="-70"/>
|
||||
<delta pt="12" x="61" y="-60"/>
|
||||
<delta pt="13" x="122" y="0"/>
|
||||
<delta pt="14" x="21" y="-82"/>
|
||||
<delta pt="15" x="21" y="12"/>
|
||||
<delta pt="16" x="52" y="12"/>
|
||||
<delta pt="17" x="52" y="-82"/>
|
||||
<delta pt="18" x="0" y="0"/>
|
||||
<delta pt="19" x="72" y="0"/>
|
||||
<delta pt="20" x="0" y="22"/>
|
||||
<delta pt="21" x="0" y="0"/>
|
||||
</tuple>
|
||||
</glyphVariations>
|
||||
<glyphVariations glyph="ampersand">
|
||||
<tuple>
|
||||
<coord axis="wght" value="1.0"/>
|
||||
<delta pt="0" x="22" y="0"/>
|
||||
<delta pt="1" x="-16" y="0"/>
|
||||
<delta pt="2" x="-16" y="18"/>
|
||||
<delta pt="3" x="-16" y="10"/>
|
||||
<delta pt="4" x="-16" y="22"/>
|
||||
<delta pt="5" x="-14" y="24"/>
|
||||
<delta pt="6" x="-11" y="9"/>
|
||||
<delta pt="7" x="-8" y="-13"/>
|
||||
<delta pt="8" x="-6" y="-37"/>
|
||||
<delta pt="9" x="-6" y="-46"/>
|
||||
<delta pt="10" x="-6" y="-58"/>
|
||||
<delta pt="11" x="9" y="-94"/>
|
||||
<delta pt="12" x="32" y="-94"/>
|
||||
<delta pt="13" x="58" y="-94"/>
|
||||
<delta pt="14" x="79" y="-58"/>
|
||||
<delta pt="15" x="79" y="-44"/>
|
||||
<delta pt="16" x="79" y="-23"/>
|
||||
<delta pt="17" x="87" y="22"/>
|
||||
<delta pt="18" x="100" y="62"/>
|
||||
<delta pt="19" x="108" y="77"/>
|
||||
<delta pt="20" x="111" y="87"/>
|
||||
<delta pt="21" x="120" y="102"/>
|
||||
<delta pt="22" x="120" y="110"/>
|
||||
<delta pt="23" x="92" y="0"/>
|
||||
<delta pt="24" x="72" y="-3"/>
|
||||
<delta pt="25" x="36" y="-4"/>
|
||||
<delta pt="26" x="23" y="-7"/>
|
||||
<delta pt="27" x="2" y="-11"/>
|
||||
<delta pt="28" x="-23" y="-20"/>
|
||||
<delta pt="29" x="-32" y="-33"/>
|
||||
<delta pt="30" x="-32" y="-42"/>
|
||||
<delta pt="31" x="-32" y="-35"/>
|
||||
<delta pt="32" x="-4" y="-10"/>
|
||||
<delta pt="33" x="26" y="-10"/>
|
||||
<delta pt="34" x="53" y="-10"/>
|
||||
<delta pt="35" x="94" y="-28"/>
|
||||
<delta pt="36" x="94" y="-48"/>
|
||||
<delta pt="37" x="94" y="-52"/>
|
||||
<delta pt="38" x="100" y="-48"/>
|
||||
<delta pt="39" x="108" y="-31"/>
|
||||
<delta pt="40" x="114" y="-3"/>
|
||||
<delta pt="41" x="114" y="18"/>
|
||||
<delta pt="42" x="114" y="57"/>
|
||||
<delta pt="43" x="66" y="102"/>
|
||||
<delta pt="44" x="42" y="102"/>
|
||||
<delta pt="45" x="28" y="102"/>
|
||||
<delta pt="46" x="11" y="88"/>
|
||||
<delta pt="47" x="10" y="78"/>
|
||||
<delta pt="48" x="6" y="66"/>
|
||||
<delta pt="49" x="8" y="40"/>
|
||||
<delta pt="50" x="4" y="32"/>
|
||||
<delta pt="51" x="130" y="32"/>
|
||||
<delta pt="52" x="129" y="32"/>
|
||||
<delta pt="53" x="118" y="30"/>
|
||||
<delta pt="54" x="106" y="20"/>
|
||||
<delta pt="55" x="96" y="10"/>
|
||||
<delta pt="56" x="51" y="0"/>
|
||||
<delta pt="57" x="0" y="0"/>
|
||||
<delta pt="58" x="128" y="0"/>
|
||||
<delta pt="59" x="0" y="-10"/>
|
||||
<delta pt="60" x="0" y="0"/>
|
||||
</tuple>
|
||||
</glyphVariations>
|
||||
<glyphVariations glyph="uni25CC">
|
||||
<tuple>
|
||||
<coord axis="wght" value="1.0"/>
|
||||
<delta pt="0" x="-6" y="-1"/>
|
||||
<delta pt="1" x="-10" y="-1"/>
|
||||
<delta pt="2" x="-20" y="4"/>
|
||||
<delta pt="3" x="-20" y="12"/>
|
||||
<delta pt="4" x="-20" y="18"/>
|
||||
<delta pt="5" x="-10" y="26"/>
|
||||
<delta pt="6" x="-6" y="26"/>
|
||||
<delta pt="7" x="8" y="26"/>
|
||||
<delta pt="8" x="8" y="12"/>
|
||||
<delta pt="9" x="8" y="-1"/>
|
||||
<delta pt="10" x="-6" y="-3"/>
|
||||
<delta pt="11" x="-12" y="-3"/>
|
||||
<delta pt="12" x="-22" y="4"/>
|
||||
<delta pt="13" x="-22" y="12"/>
|
||||
<delta pt="14" x="-22" y="17"/>
|
||||
<delta pt="15" x="-12" y="25"/>
|
||||
<delta pt="16" x="-6" y="25"/>
|
||||
<delta pt="17" x="8" y="25"/>
|
||||
<delta pt="18" x="8" y="12"/>
|
||||
<delta pt="19" x="8" y="-3"/>
|
||||
<delta pt="20" x="-6" y="-5"/>
|
||||
<delta pt="21" x="-10" y="-5"/>
|
||||
<delta pt="22" x="-20" y="3"/>
|
||||
<delta pt="23" x="-20" y="9"/>
|
||||
<delta pt="24" x="-20" y="16"/>
|
||||
<delta pt="25" x="-10" y="23"/>
|
||||
<delta pt="26" x="-6" y="23"/>
|
||||
<delta pt="27" x="8" y="23"/>
|
||||
<delta pt="28" x="8" y="9"/>
|
||||
<delta pt="29" x="8" y="-5"/>
|
||||
<delta pt="30" x="-7" y="-1"/>
|
||||
<delta pt="31" x="-13" y="-1"/>
|
||||
<delta pt="32" x="-23" y="6"/>
|
||||
<delta pt="33" x="-23" y="12"/>
|
||||
<delta pt="34" x="-23" y="19"/>
|
||||
<delta pt="35" x="-13" y="27"/>
|
||||
<delta pt="36" x="-7" y="27"/>
|
||||
<delta pt="37" x="-2" y="27"/>
|
||||
<delta pt="38" x="8" y="19"/>
|
||||
<delta pt="39" x="8" y="12"/>
|
||||
<delta pt="40" x="8" y="-1"/>
|
||||
<delta pt="41" x="-7" y="-5"/>
|
||||
<delta pt="42" x="-13" y="-5"/>
|
||||
<delta pt="43" x="-23" y="2"/>
|
||||
<delta pt="44" x="-23" y="9"/>
|
||||
<delta pt="45" x="-23" y="14"/>
|
||||
<delta pt="46" x="-13" y="23"/>
|
||||
<delta pt="47" x="-7" y="23"/>
|
||||
<delta pt="48" x="-2" y="23"/>
|
||||
<delta pt="49" x="8" y="14"/>
|
||||
<delta pt="50" x="8" y="9"/>
|
||||
<delta pt="51" x="8" y="-5"/>
|
||||
<delta pt="52" x="-8" y="-1"/>
|
||||
<delta pt="53" x="-13" y="-1"/>
|
||||
<delta pt="54" x="-22" y="8"/>
|
||||
<delta pt="55" x="-22" y="14"/>
|
||||
<delta pt="56" x="-22" y="20"/>
|
||||
<delta pt="57" x="-13" y="27"/>
|
||||
<delta pt="58" x="-8" y="27"/>
|
||||
<delta pt="59" x="6" y="27"/>
|
||||
<delta pt="60" x="6" y="14"/>
|
||||
<delta pt="61" x="6" y="-1"/>
|
||||
<delta pt="62" x="-8" y="-5"/>
|
||||
<delta pt="63" x="-13" y="-5"/>
|
||||
<delta pt="64" x="-22" y="3"/>
|
||||
<delta pt="65" x="-22" y="10"/>
|
||||
<delta pt="66" x="-22" y="16"/>
|
||||
<delta pt="67" x="-13" y="22"/>
|
||||
<delta pt="68" x="-8" y="22"/>
|
||||
<delta pt="69" x="6" y="22"/>
|
||||
<delta pt="70" x="6" y="10"/>
|
||||
<delta pt="71" x="6" y="-5"/>
|
||||
<delta pt="72" x="-9" y="-1"/>
|
||||
<delta pt="73" x="-15" y="-1"/>
|
||||
<delta pt="74" x="-25" y="6"/>
|
||||
<delta pt="75" x="-25" y="12"/>
|
||||
<delta pt="76" x="-25" y="19"/>
|
||||
<delta pt="77" x="-15" y="27"/>
|
||||
<delta pt="78" x="-9" y="27"/>
|
||||
<delta pt="79" x="-3" y="27"/>
|
||||
<delta pt="80" x="7" y="19"/>
|
||||
<delta pt="81" x="7" y="12"/>
|
||||
<delta pt="82" x="7" y="-1"/>
|
||||
<delta pt="83" x="-9" y="-5"/>
|
||||
<delta pt="84" x="-15" y="-5"/>
|
||||
<delta pt="85" x="-25" y="1"/>
|
||||
<delta pt="86" x="-25" y="9"/>
|
||||
<delta pt="87" x="-25" y="15"/>
|
||||
<delta pt="88" x="-15" y="24"/>
|
||||
<delta pt="89" x="-9" y="24"/>
|
||||
<delta pt="90" x="-3" y="24"/>
|
||||
<delta pt="91" x="7" y="15"/>
|
||||
<delta pt="92" x="7" y="9"/>
|
||||
<delta pt="93" x="7" y="-5"/>
|
||||
<delta pt="94" x="-8" y="-1"/>
|
||||
<delta pt="95" x="-16" y="-1"/>
|
||||
<delta pt="96" x="-25" y="4"/>
|
||||
<delta pt="97" x="-25" y="12"/>
|
||||
<delta pt="98" x="-25" y="18"/>
|
||||
<delta pt="99" x="-16" y="26"/>
|
||||
<delta pt="100" x="-8" y="26"/>
|
||||
<delta pt="101" x="6" y="26"/>
|
||||
<delta pt="102" x="6" y="12"/>
|
||||
<delta pt="103" x="6" y="-1"/>
|
||||
<delta pt="104" x="-10" y="-3"/>
|
||||
<delta pt="105" x="-25" y="-3"/>
|
||||
<delta pt="106" x="-25" y="12"/>
|
||||
<delta pt="107" x="-25" y="25"/>
|
||||
<delta pt="108" x="-10" y="25"/>
|
||||
<delta pt="109" x="-3" y="25"/>
|
||||
<delta pt="110" x="5" y="17"/>
|
||||
<delta pt="111" x="5" y="12"/>
|
||||
<delta pt="112" x="5" y="-3"/>
|
||||
<delta pt="113" x="-8" y="-4"/>
|
||||
<delta pt="114" x="-16" y="-4"/>
|
||||
<delta pt="115" x="-25" y="3"/>
|
||||
<delta pt="116" x="-25" y="10"/>
|
||||
<delta pt="117" x="-25" y="17"/>
|
||||
<delta pt="118" x="-16" y="24"/>
|
||||
<delta pt="119" x="-8" y="24"/>
|
||||
<delta pt="120" x="6" y="24"/>
|
||||
<delta pt="121" x="6" y="10"/>
|
||||
<delta pt="122" x="6" y="-4"/>
|
||||
<delta pt="123" x="0" y="0"/>
|
||||
<delta pt="124" x="-18" y="0"/>
|
||||
<delta pt="125" x="0" y="22"/>
|
||||
<delta pt="126" x="0" y="1"/>
|
||||
</tuple>
|
||||
</glyphVariations>
|
||||
<glyphVariations glyph="uni0303">
|
||||
<tuple>
|
||||
<coord axis="wght" value="1.0"/>
|
||||
<delta pt="0" x="-13" y="-8"/>
|
||||
<delta pt="1" x="-4" y="-8"/>
|
||||
<delta pt="2" x="-4" y="-30"/>
|
||||
<delta pt="3" x="2" y="-52"/>
|
||||
<delta pt="4" x="18" y="-52"/>
|
||||
<delta pt="5" x="34" y="-52"/>
|
||||
<delta pt="6" x="45" y="-13"/>
|
||||
<delta pt="7" x="44" y="0"/>
|
||||
<delta pt="8" x="-36" y="4"/>
|
||||
<delta pt="9" x="-37" y="46"/>
|
||||
<delta pt="10" x="0" y="40"/>
|
||||
<delta pt="11" x="12" y="40"/>
|
||||
<delta pt="12" x="4" y="40"/>
|
||||
<delta pt="13" x="3" y="62"/>
|
||||
<delta pt="14" x="-3" y="84"/>
|
||||
<delta pt="15" x="-19" y="84"/>
|
||||
<delta pt="16" x="-35" y="84"/>
|
||||
<delta pt="17" x="-45" y="44"/>
|
||||
<delta pt="18" x="-44" y="32"/>
|
||||
<delta pt="19" x="36" y="28"/>
|
||||
<delta pt="20" x="37" y="-15"/>
|
||||
<delta pt="21" x="0" y="-8"/>
|
||||
<delta pt="22" x="0" y="0"/>
|
||||
<delta pt="23" x="0" y="0"/>
|
||||
<delta pt="24" x="0" y="40"/>
|
||||
<delta pt="25" x="0" y="8"/>
|
||||
</tuple>
|
||||
</glyphVariations>
|
||||
<glyphVariations glyph="uni0308">
|
||||
<tuple>
|
||||
<coord axis="wght" value="1.0"/>
|
||||
<delta pt="0" x="-28" y="-40"/>
|
||||
<delta pt="1" x="-49" y="-40"/>
|
||||
<delta pt="2" x="-76" y="-12"/>
|
||||
<delta pt="3" x="-76" y="8"/>
|
||||
<delta pt="4" x="-76" y="28"/>
|
||||
<delta pt="5" x="-49" y="56"/>
|
||||
<delta pt="6" x="-28" y="56"/>
|
||||
<delta pt="7" x="-7" y="56"/>
|
||||
<delta pt="8" x="20" y="28"/>
|
||||
<delta pt="9" x="20" y="8"/>
|
||||
<delta pt="10" x="20" y="-12"/>
|
||||
<delta pt="11" x="-7" y="-40"/>
|
||||
<delta pt="12" x="28" y="-40"/>
|
||||
<delta pt="13" x="7" y="-40"/>
|
||||
<delta pt="14" x="-20" y="-12"/>
|
||||
<delta pt="15" x="-20" y="8"/>
|
||||
<delta pt="16" x="-20" y="28"/>
|
||||
<delta pt="17" x="7" y="56"/>
|
||||
<delta pt="18" x="28" y="56"/>
|
||||
<delta pt="19" x="49" y="56"/>
|
||||
<delta pt="20" x="76" y="28"/>
|
||||
<delta pt="21" x="76" y="8"/>
|
||||
<delta pt="22" x="76" y="-12"/>
|
||||
<delta pt="23" x="49" y="-40"/>
|
||||
<delta pt="24" x="0" y="0"/>
|
||||
<delta pt="25" x="0" y="0"/>
|
||||
<delta pt="26" x="0" y="56"/>
|
||||
<delta pt="27" x="0" y="40"/>
|
||||
</tuple>
|
||||
</glyphVariations>
|
||||
<glyphVariations glyph="uni0330">
|
||||
<tuple>
|
||||
<coord axis="wght" 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="40"/>
|
||||
<delta pt="4" x="0" y="8"/>
|
||||
</tuple>
|
||||
</glyphVariations>
|
||||
<glyphVariations glyph="uni0324">
|
||||
<tuple>
|
||||
<coord axis="wght" value="1.0"/>
|
||||
<delta pt="0" x="0" y="4"/>
|
||||
<delta pt="1" x="0" y="0"/>
|
||||
<delta pt="2" x="0" y="0"/>
|
||||
<delta pt="3" x="0" y="60"/>
|
||||
<delta pt="4" x="0" y="36"/>
|
||||
</tuple>
|
||||
</glyphVariations>
|
||||
</gvar>
|
||||
|
||||
</ttFont>
|
2197
Tests/varLib/data/test_results/BuildMain.ttx
Normal file
2197
Tests/varLib/data/test_results/BuildMain.ttx
Normal file
File diff suppressed because it is too large
Load Diff
4
Tests/varLib/data/test_results/InterpolateLayout2.ttx
Normal file
4
Tests/varLib/data/test_results/InterpolateLayout2.ttx
Normal file
@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="3.7">
|
||||
|
||||
</ttFont>
|
478
Tests/varLib/data/test_results/InterpolateLayoutMain.ttx
Normal file
478
Tests/varLib/data/test_results/InterpolateLayoutMain.ttx
Normal file
@ -0,0 +1,478 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="3.7">
|
||||
|
||||
<GlyphOrder>
|
||||
<!-- The 'id' attribute is only for humans; it is ignored when parsed. -->
|
||||
<GlyphID id="0" name=".notdef"/>
|
||||
<GlyphID id="1" name="uni0020"/>
|
||||
<GlyphID id="2" name="uni0041"/>
|
||||
<GlyphID id="3" name="uni0061"/>
|
||||
<GlyphID id="4" name="uni0024"/>
|
||||
<GlyphID id="5" name="uni0024.nostroke"/>
|
||||
</GlyphOrder>
|
||||
|
||||
<hhea>
|
||||
<tableVersion value="0x00010000"/>
|
||||
<ascent value="918"/>
|
||||
<descent value="-335"/>
|
||||
<lineGap value="0"/>
|
||||
<advanceWidthMax value="663"/>
|
||||
<minLeftSideBearing value="5"/>
|
||||
<minRightSideBearing value="7"/>
|
||||
<xMaxExtent value="653"/>
|
||||
<caretSlopeRise value="1"/>
|
||||
<caretSlopeRun value="0"/>
|
||||
<caretOffset value="0"/>
|
||||
<reserved0 value="0"/>
|
||||
<reserved1 value="0"/>
|
||||
<reserved2 value="0"/>
|
||||
<reserved3 value="0"/>
|
||||
<metricDataFormat value="0"/>
|
||||
<numberOfHMetrics value="5"/>
|
||||
</hhea>
|
||||
|
||||
<maxp>
|
||||
<!-- Most of this table will be recalculated by the compiler -->
|
||||
<tableVersion value="0x10000"/>
|
||||
<numGlyphs value="6"/>
|
||||
<maxPoints value="62"/>
|
||||
<maxContours value="4"/>
|
||||
<maxCompositePoints value="0"/>
|
||||
<maxCompositeContours value="0"/>
|
||||
<maxZones value="1"/>
|
||||
<maxTwilightPoints value="0"/>
|
||||
<maxStorage value="0"/>
|
||||
<maxFunctionDefs value="0"/>
|
||||
<maxInstructionDefs value="0"/>
|
||||
<maxStackElements value="0"/>
|
||||
<maxSizeOfInstructions value="0"/>
|
||||
<maxComponentElements value="0"/>
|
||||
<maxComponentDepth value="0"/>
|
||||
</maxp>
|
||||
|
||||
<OS_2>
|
||||
<!-- The fields 'usFirstCharIndex' and 'usLastCharIndex'
|
||||
will be recalculated by the compiler -->
|
||||
<version value="4"/>
|
||||
<xAvgCharWidth value="506"/>
|
||||
<usWeightClass value="400"/>
|
||||
<usWidthClass value="5"/>
|
||||
<fsType value="00000000 00000100"/>
|
||||
<ySubscriptXSize value="650"/>
|
||||
<ySubscriptYSize value="600"/>
|
||||
<ySubscriptXOffset value="0"/>
|
||||
<ySubscriptYOffset value="75"/>
|
||||
<ySuperscriptXSize value="650"/>
|
||||
<ySuperscriptYSize value="600"/>
|
||||
<ySuperscriptXOffset value="0"/>
|
||||
<ySuperscriptYOffset value="350"/>
|
||||
<yStrikeoutSize value="50"/>
|
||||
<yStrikeoutPosition value="284"/>
|
||||
<sFamilyClass value="0"/>
|
||||
<panose>
|
||||
<bFamilyType value="2"/>
|
||||
<bSerifStyle value="4"/>
|
||||
<bWeight value="6"/>
|
||||
<bProportion value="3"/>
|
||||
<bContrast value="5"/>
|
||||
<bStrokeVariation value="4"/>
|
||||
<bArmStyle value="5"/>
|
||||
<bLetterForm value="2"/>
|
||||
<bMidline value="2"/>
|
||||
<bXHeight value="4"/>
|
||||
</panose>
|
||||
<ulUnicodeRange1 value="00000000 00000000 00000000 00000011"/>
|
||||
<ulUnicodeRange2 value="00000000 00000000 00000000 00000000"/>
|
||||
<ulUnicodeRange3 value="00000000 00000000 00000000 00000000"/>
|
||||
<ulUnicodeRange4 value="00000000 00000000 00000000 00000000"/>
|
||||
<achVendID value="ADBO"/>
|
||||
<fsSelection value="00000000 01000000"/>
|
||||
<usFirstCharIndex value="32"/>
|
||||
<usLastCharIndex value="97"/>
|
||||
<sTypoAscender value="730"/>
|
||||
<sTypoDescender value="-270"/>
|
||||
<sTypoLineGap value="0"/>
|
||||
<usWinAscent value="918"/>
|
||||
<usWinDescent value="335"/>
|
||||
<ulCodePageRange1 value="00100000 00000000 00000000 00000011"/>
|
||||
<ulCodePageRange2 value="00000000 00000000 00000000 00000000"/>
|
||||
<sxHeight value="474"/>
|
||||
<sCapHeight value="677"/>
|
||||
<usDefaultChar value="0"/>
|
||||
<usBreakChar value="32"/>
|
||||
<usMaxContext value="0"/>
|
||||
</OS_2>
|
||||
|
||||
<hmtx>
|
||||
<mtx name=".notdef" width="640" lsb="80"/>
|
||||
<mtx name="uni0020" width="234" lsb="0"/>
|
||||
<mtx name="uni0024" width="497" lsb="51"/>
|
||||
<mtx name="uni0024.nostroke" width="497" lsb="51"/>
|
||||
<mtx name="uni0041" width="663" lsb="5"/>
|
||||
<mtx name="uni0061" width="508" lsb="46"/>
|
||||
</hmtx>
|
||||
|
||||
<cmap>
|
||||
<tableVersion version="0"/>
|
||||
<cmap_format_4 platformID="0" platEncID="3" language="0">
|
||||
<map code="0x20" name="uni0020"/><!-- SPACE -->
|
||||
<map code="0x24" name="uni0024"/><!-- DOLLAR SIGN -->
|
||||
<map code="0x41" name="uni0041"/><!-- LATIN CAPITAL LETTER A -->
|
||||
<map code="0x61" name="uni0061"/><!-- LATIN SMALL LETTER A -->
|
||||
</cmap_format_4>
|
||||
<cmap_format_4 platformID="3" platEncID="1" language="0">
|
||||
<map code="0x20" name="uni0020"/><!-- SPACE -->
|
||||
<map code="0x24" name="uni0024"/><!-- DOLLAR SIGN -->
|
||||
<map code="0x41" name="uni0041"/><!-- LATIN CAPITAL LETTER A -->
|
||||
<map code="0x61" name="uni0061"/><!-- LATIN SMALL LETTER A -->
|
||||
</cmap_format_4>
|
||||
</cmap>
|
||||
|
||||
<loca>
|
||||
<!-- The 'loca' table will be calculated by the compiler -->
|
||||
</loca>
|
||||
|
||||
<glyf>
|
||||
|
||||
<!-- The xMin, yMin, xMax and yMax values
|
||||
will be recalculated by the compiler. -->
|
||||
|
||||
<TTGlyph name=".notdef" xMin="80" yMin="0" xMax="560" yMax="670">
|
||||
<contour>
|
||||
<pt x="80" y="0" on="1"/>
|
||||
<pt x="500" y="670" on="1"/>
|
||||
<pt x="560" y="670" on="1"/>
|
||||
<pt x="140" y="0" on="1"/>
|
||||
</contour>
|
||||
<contour>
|
||||
<pt x="560" y="0" on="1"/>
|
||||
<pt x="500" y="0" on="1"/>
|
||||
<pt x="80" y="670" on="1"/>
|
||||
<pt x="140" y="670" on="1"/>
|
||||
</contour>
|
||||
<contour>
|
||||
<pt x="140" y="50" on="1"/>
|
||||
<pt x="500" y="50" on="1"/>
|
||||
<pt x="500" y="620" on="1"/>
|
||||
<pt x="140" y="620" on="1"/>
|
||||
</contour>
|
||||
<contour>
|
||||
<pt x="80" y="0" on="1"/>
|
||||
<pt x="80" y="670" on="1"/>
|
||||
<pt x="560" y="670" on="1"/>
|
||||
<pt x="560" y="0" on="1"/>
|
||||
</contour>
|
||||
<instructions/>
|
||||
</TTGlyph>
|
||||
|
||||
<TTGlyph name="uni0020"/><!-- contains no outline data -->
|
||||
|
||||
<TTGlyph name="uni0024" xMin="51" yMin="-115" xMax="461" yMax="750">
|
||||
<contour>
|
||||
<pt x="248" y="35" on="1"/>
|
||||
<pt x="310" y="35" on="0"/>
|
||||
<pt x="383" y="96" on="0"/>
|
||||
<pt x="383" y="151" on="1"/>
|
||||
<pt x="383" y="198" on="0"/>
|
||||
<pt x="326" y="252" on="0"/>
|
||||
<pt x="262" y="274" on="1"/>
|
||||
<pt x="225" y="287" on="1"/>
|
||||
<pt x="146" y="315" on="0"/>
|
||||
<pt x="58" y="403" on="0"/>
|
||||
<pt x="58" y="478" on="1"/>
|
||||
<pt x="58" y="554" on="0"/>
|
||||
<pt x="170" y="660" on="0"/>
|
||||
<pt x="256" y="660" on="1"/>
|
||||
<pt x="332" y="660" on="0"/>
|
||||
<pt x="438" y="578" on="0"/>
|
||||
<pt x="443" y="514" on="1"/>
|
||||
<pt x="437" y="498" on="0"/>
|
||||
<pt x="413" y="483" on="0"/>
|
||||
<pt x="399" y="483" on="1"/>
|
||||
<pt x="382" y="483" on="0"/>
|
||||
<pt x="349" y="510" on="0"/>
|
||||
<pt x="340" y="549" on="1"/>
|
||||
<pt x="323" y="625" on="1"/>
|
||||
<pt x="375" y="589" on="1"/>
|
||||
<pt x="344" y="602" on="0"/>
|
||||
<pt x="290" y="611" on="0"/>
|
||||
<pt x="267" y="611" on="1"/>
|
||||
<pt x="212" y="611" on="0"/>
|
||||
<pt x="136" y="555" on="0"/>
|
||||
<pt x="136" y="499" on="1"/>
|
||||
<pt x="136" y="451" on="0"/>
|
||||
<pt x="194" y="394" on="0"/>
|
||||
<pt x="247" y="377" on="1"/>
|
||||
<pt x="285" y="364" on="1"/>
|
||||
<pt x="386" y="329" on="0"/>
|
||||
<pt x="461" y="232" on="0"/>
|
||||
<pt x="461" y="170" on="1"/>
|
||||
<pt x="461" y="90" on="0"/>
|
||||
<pt x="345" y="-13" on="0"/>
|
||||
<pt x="243" y="-13" on="1"/>
|
||||
<pt x="163" y="-13" on="0"/>
|
||||
<pt x="54" y="68" on="0"/>
|
||||
<pt x="51" y="133" on="1"/>
|
||||
<pt x="58" y="148" on="0"/>
|
||||
<pt x="80" y="164" on="0"/>
|
||||
<pt x="96" y="164" on="1"/>
|
||||
<pt x="114" y="164" on="0"/>
|
||||
<pt x="145" y="138" on="0"/>
|
||||
<pt x="154" y="98" on="1"/>
|
||||
<pt x="171" y="22" on="1"/>
|
||||
<pt x="118" y="58" on="1"/>
|
||||
<pt x="152" y="44" on="0"/>
|
||||
<pt x="219" y="35" on="0"/>
|
||||
</contour>
|
||||
<contour>
|
||||
<pt x="279" y="322" on="1"/>
|
||||
<pt x="239" y="322" on="1"/>
|
||||
<pt x="239" y="750" on="1"/>
|
||||
<pt x="279" y="750" on="1"/>
|
||||
</contour>
|
||||
<contour>
|
||||
<pt x="238" y="-115" on="1"/>
|
||||
<pt x="238" y="322" on="1"/>
|
||||
<pt x="278" y="322" on="1"/>
|
||||
<pt x="278" y="-115" on="1"/>
|
||||
</contour>
|
||||
<instructions/>
|
||||
</TTGlyph>
|
||||
|
||||
<TTGlyph name="uni0024.nostroke" xMin="51" yMin="-115" xMax="461" yMax="750">
|
||||
<contour>
|
||||
<pt x="248" y="35" on="1"/>
|
||||
<pt x="310" y="35" on="0"/>
|
||||
<pt x="383" y="96" on="0"/>
|
||||
<pt x="383" y="151" on="1"/>
|
||||
<pt x="383" y="198" on="0"/>
|
||||
<pt x="326" y="252" on="0"/>
|
||||
<pt x="262" y="274" on="1"/>
|
||||
<pt x="225" y="287" on="1"/>
|
||||
<pt x="146" y="315" on="0"/>
|
||||
<pt x="58" y="403" on="0"/>
|
||||
<pt x="58" y="478" on="1"/>
|
||||
<pt x="58" y="554" on="0"/>
|
||||
<pt x="170" y="660" on="0"/>
|
||||
<pt x="256" y="660" on="1"/>
|
||||
<pt x="332" y="660" on="0"/>
|
||||
<pt x="438" y="578" on="0"/>
|
||||
<pt x="443" y="514" on="1"/>
|
||||
<pt x="437" y="498" on="0"/>
|
||||
<pt x="413" y="483" on="0"/>
|
||||
<pt x="399" y="483" on="1"/>
|
||||
<pt x="382" y="483" on="0"/>
|
||||
<pt x="349" y="510" on="0"/>
|
||||
<pt x="340" y="549" on="1"/>
|
||||
<pt x="323" y="625" on="1"/>
|
||||
<pt x="375" y="589" on="1"/>
|
||||
<pt x="344" y="602" on="0"/>
|
||||
<pt x="290" y="611" on="0"/>
|
||||
<pt x="267" y="611" on="1"/>
|
||||
<pt x="212" y="611" on="0"/>
|
||||
<pt x="136" y="555" on="0"/>
|
||||
<pt x="136" y="499" on="1"/>
|
||||
<pt x="136" y="451" on="0"/>
|
||||
<pt x="194" y="394" on="0"/>
|
||||
<pt x="247" y="377" on="1"/>
|
||||
<pt x="285" y="364" on="1"/>
|
||||
<pt x="386" y="329" on="0"/>
|
||||
<pt x="461" y="232" on="0"/>
|
||||
<pt x="461" y="170" on="1"/>
|
||||
<pt x="461" y="90" on="0"/>
|
||||
<pt x="345" y="-13" on="0"/>
|
||||
<pt x="243" y="-13" on="1"/>
|
||||
<pt x="163" y="-13" on="0"/>
|
||||
<pt x="54" y="68" on="0"/>
|
||||
<pt x="51" y="133" on="1"/>
|
||||
<pt x="58" y="148" on="0"/>
|
||||
<pt x="80" y="164" on="0"/>
|
||||
<pt x="96" y="164" on="1"/>
|
||||
<pt x="114" y="164" on="0"/>
|
||||
<pt x="145" y="138" on="0"/>
|
||||
<pt x="154" y="98" on="1"/>
|
||||
<pt x="171" y="22" on="1"/>
|
||||
<pt x="118" y="58" on="1"/>
|
||||
<pt x="152" y="44" on="0"/>
|
||||
<pt x="219" y="35" on="0"/>
|
||||
</contour>
|
||||
<contour>
|
||||
<pt x="279" y="635" on="1"/>
|
||||
<pt x="239" y="635" on="1"/>
|
||||
<pt x="239" y="750" on="1"/>
|
||||
<pt x="279" y="750" on="1"/>
|
||||
</contour>
|
||||
<contour>
|
||||
<pt x="238" y="-115" on="1"/>
|
||||
<pt x="238" y="12" on="1"/>
|
||||
<pt x="278" y="12" on="1"/>
|
||||
<pt x="278" y="-115" on="1"/>
|
||||
</contour>
|
||||
<instructions/>
|
||||
</TTGlyph>
|
||||
|
||||
<TTGlyph name="uni0041" xMin="5" yMin="0" xMax="653" yMax="675">
|
||||
<contour>
|
||||
<pt x="5" y="0" on="1"/>
|
||||
<pt x="5" y="40" on="1"/>
|
||||
<pt x="105" y="55" on="1"/>
|
||||
<pt x="125" y="55" on="1"/>
|
||||
<pt x="235" y="40" on="1"/>
|
||||
<pt x="235" y="0" on="1"/>
|
||||
</contour>
|
||||
<contour>
|
||||
<pt x="71" y="0" on="1"/>
|
||||
<pt x="303" y="675" on="1"/>
|
||||
<pt x="363" y="675" on="1"/>
|
||||
<pt x="593" y="0" on="1"/>
|
||||
<pt x="500" y="0" on="1"/>
|
||||
<pt x="299" y="599" on="1"/>
|
||||
<pt x="322" y="599" on="1"/>
|
||||
<pt x="118" y="0" on="1"/>
|
||||
</contour>
|
||||
<contour>
|
||||
<pt x="170" y="219" on="1"/>
|
||||
<pt x="186" y="265" on="1"/>
|
||||
<pt x="456" y="265" on="1"/>
|
||||
<pt x="472" y="219" on="1"/>
|
||||
</contour>
|
||||
<contour>
|
||||
<pt x="383" y="0" on="1"/>
|
||||
<pt x="383" y="40" on="1"/>
|
||||
<pt x="509" y="55" on="1"/>
|
||||
<pt x="529" y="55" on="1"/>
|
||||
<pt x="653" y="40" on="1"/>
|
||||
<pt x="653" y="0" on="1"/>
|
||||
</contour>
|
||||
<instructions/>
|
||||
</TTGlyph>
|
||||
|
||||
<TTGlyph name="uni0061" xMin="46" yMin="-13" xMax="501" yMax="487">
|
||||
<contour>
|
||||
<pt x="46" y="112" on="1"/>
|
||||
<pt x="46" y="154" on="0"/>
|
||||
<pt x="110" y="225" on="0"/>
|
||||
<pt x="210" y="262" on="1"/>
|
||||
<pt x="242" y="273" on="0"/>
|
||||
<pt x="328" y="297" on="0"/>
|
||||
<pt x="365" y="304" on="1"/>
|
||||
<pt x="365" y="268" on="1"/>
|
||||
<pt x="331" y="261" on="0"/>
|
||||
<pt x="254" y="237" on="0"/>
|
||||
<pt x="231" y="228" on="1"/>
|
||||
<pt x="164" y="202" on="0"/>
|
||||
<pt x="131" y="148" on="0"/>
|
||||
<pt x="131" y="126" on="1"/>
|
||||
<pt x="131" y="86" on="0"/>
|
||||
<pt x="178" y="52" on="0"/>
|
||||
<pt x="212" y="52" on="1"/>
|
||||
<pt x="238" y="52" on="0"/>
|
||||
<pt x="283" y="76" on="0"/>
|
||||
<pt x="330" y="110" on="1"/>
|
||||
<pt x="350" y="125" on="1"/>
|
||||
<pt x="364" y="104" on="1"/>
|
||||
<pt x="335" y="75" on="1"/>
|
||||
<pt x="290" y="30" on="0"/>
|
||||
<pt x="226" y="-13" on="0"/>
|
||||
<pt x="180" y="-13" on="1"/>
|
||||
<pt x="125" y="-13" on="0"/>
|
||||
<pt x="46" y="50" on="0"/>
|
||||
</contour>
|
||||
<contour>
|
||||
<pt x="325" y="92" on="1"/>
|
||||
<pt x="325" y="320" on="1"/>
|
||||
<pt x="325" y="394" on="0"/>
|
||||
<pt x="280" y="442" on="0"/>
|
||||
<pt x="231" y="442" on="1"/>
|
||||
<pt x="214" y="442" on="0"/>
|
||||
<pt x="169" y="435" on="0"/>
|
||||
<pt x="141" y="424" on="1"/>
|
||||
<pt x="181" y="455" on="1"/>
|
||||
<pt x="155" y="369" on="1"/>
|
||||
<pt x="148" y="347" on="0"/>
|
||||
<pt x="124" y="324" on="0"/>
|
||||
<pt x="104" y="324" on="1"/>
|
||||
<pt x="62" y="324" on="0"/>
|
||||
<pt x="59" y="364" on="1"/>
|
||||
<pt x="73" y="421" on="0"/>
|
||||
<pt x="177" y="487" on="0"/>
|
||||
<pt x="252" y="487" on="1"/>
|
||||
<pt x="329" y="487" on="0"/>
|
||||
<pt x="405" y="408" on="0"/>
|
||||
<pt x="405" y="314" on="1"/>
|
||||
<pt x="405" y="102" on="1"/>
|
||||
<pt x="405" y="68" on="0"/>
|
||||
<pt x="425" y="41" on="0"/>
|
||||
<pt x="442" y="41" on="1"/>
|
||||
<pt x="455" y="41" on="0"/>
|
||||
<pt x="473" y="53" on="0"/>
|
||||
<pt x="481" y="63" on="1"/>
|
||||
<pt x="501" y="41" on="1"/>
|
||||
<pt x="469" y="-10" on="0"/>
|
||||
<pt x="416" y="-10" on="1"/>
|
||||
<pt x="375" y="-10" on="0"/>
|
||||
<pt x="325" y="46" on="0"/>
|
||||
</contour>
|
||||
<instructions/>
|
||||
</TTGlyph>
|
||||
|
||||
</glyf>
|
||||
|
||||
<name>
|
||||
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
|
||||
Test Family
|
||||
</namerecord>
|
||||
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x409">
|
||||
Regular
|
||||
</namerecord>
|
||||
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
|
||||
Version 1.001;ADBO;Test Family Regular
|
||||
</namerecord>
|
||||
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x409">
|
||||
Test Family
|
||||
</namerecord>
|
||||
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
|
||||
Version 1.001
|
||||
</namerecord>
|
||||
<namerecord nameID="6" platformID="3" platEncID="1" langID="0x409">
|
||||
TestFamily-Master1
|
||||
</namerecord>
|
||||
<namerecord nameID="9" platformID="3" platEncID="1" langID="0x409">
|
||||
Frank Grießhammer
|
||||
</namerecord>
|
||||
<namerecord nameID="17" platformID="3" platEncID="1" langID="0x409">
|
||||
Master 1
|
||||
</namerecord>
|
||||
</name>
|
||||
|
||||
<post>
|
||||
<formatType value="2.0"/>
|
||||
<italicAngle value="0.0"/>
|
||||
<underlinePosition value="-75"/>
|
||||
<underlineThickness value="50"/>
|
||||
<isFixedPitch value="0"/>
|
||||
<minMemType42 value="0"/>
|
||||
<maxMemType42 value="0"/>
|
||||
<minMemType1 value="0"/>
|
||||
<maxMemType1 value="0"/>
|
||||
<psNames>
|
||||
<!-- This file uses unique glyph names based on the information
|
||||
found in the 'post' table. Since these names might not be unique,
|
||||
we have to invent artificial names in case of clashes. In order to
|
||||
be able to retain the original information, we need a name to
|
||||
ps name mapping for those cases where they differ. That's what
|
||||
you see below.
|
||||
-->
|
||||
</psNames>
|
||||
<extraNames>
|
||||
<!-- following are the name that are not taken from the standard Mac glyph order -->
|
||||
<psName name="dollar.nostroke"/>
|
||||
<psName name="uni0020"/>
|
||||
<psName name="uni0041"/>
|
||||
<psName name="uni0061"/>
|
||||
<psName name="uni0024"/>
|
||||
<psName name="uni0024.nostroke"/>
|
||||
</extraNames>
|
||||
</post>
|
||||
|
||||
</ttFont>
|
@ -1,7 +1,9 @@
|
||||
from __future__ import print_function, division, absolute_import
|
||||
from fontTools.misc.py23 import *
|
||||
from fontTools.ttLib import TTFont
|
||||
from fontTools.varLib import build
|
||||
from fontTools.varLib.interpolate_layout import interpolate_layout
|
||||
from fontTools.varLib.interpolate_layout import main as interpolate_layout_main
|
||||
import difflib
|
||||
import os
|
||||
import shutil
|
||||
@ -37,10 +39,13 @@ class InterpolateLayoutTest(unittest.TestCase):
|
||||
return os.path.join(path, "data", "test_results", test_file_or_folder)
|
||||
|
||||
@staticmethod
|
||||
def get_file_list(folder, suffix):
|
||||
def get_file_list(folder, suffix, prefix=''):
|
||||
all_files = os.listdir(folder)
|
||||
return [os.path.abspath(os.path.join(folder, p)) for p in all_files
|
||||
if p.endswith(suffix)]
|
||||
file_list = []
|
||||
for p in all_files:
|
||||
if p.startswith(prefix) and p.endswith(suffix):
|
||||
file_list.append(os.path.abspath(os.path.join(folder, p)))
|
||||
return file_list
|
||||
|
||||
def temp_path(self, suffix):
|
||||
self.temp_dir()
|
||||
@ -104,8 +109,8 @@ class InterpolateLayoutTest(unittest.TestCase):
|
||||
ufo_dir = self.get_test_input('master_ufo')
|
||||
ttx_dir = self.get_test_input('master_ttx_interpolatable_ttf')
|
||||
|
||||
ttx_paths = self.get_file_list(ttx_dir, '.ttx')
|
||||
self.temp_dir()
|
||||
ttx_paths = self.get_file_list(ttx_dir, '.ttx', 'TestFamily2-')
|
||||
for path in ttx_paths:
|
||||
self.compile_font(path, suffix, self.tempdir)
|
||||
|
||||
@ -118,5 +123,88 @@ class InterpolateLayoutTest(unittest.TestCase):
|
||||
self.check_ttx_dump(instfont, expected_ttx_path, tables, suffix)
|
||||
|
||||
|
||||
def test_varlib_interpolate_layout_no_GSUB_ttf(self):
|
||||
"""The base master has no GSUB table.
|
||||
|
||||
The variable font will end up without a GSUB table.
|
||||
"""
|
||||
suffix = '.ttf'
|
||||
ds_path = self.get_test_input('InterpolateLayout2.designspace')
|
||||
ufo_dir = self.get_test_input('master_ufo')
|
||||
ttx_dir = self.get_test_input('master_ttx_interpolatable_ttf')
|
||||
|
||||
self.temp_dir()
|
||||
ttx_paths = self.get_file_list(ttx_dir, '.ttx', 'TestFamily2-')
|
||||
for path in ttx_paths:
|
||||
self.compile_font(path, suffix, self.tempdir)
|
||||
|
||||
finder = lambda s: s.replace(ufo_dir, self.tempdir).replace('.ufo', suffix)
|
||||
instfont = interpolate_layout(ds_path, {'weight': 500}, finder)
|
||||
|
||||
tables = ['GSUB']
|
||||
expected_ttx_path = self.get_test_output('InterpolateLayout2.ttx')
|
||||
self.expect_ttx(instfont, expected_ttx_path, tables)
|
||||
self.check_ttx_dump(instfont, expected_ttx_path, tables, suffix)
|
||||
|
||||
|
||||
def test_varlib_interpolate_layout_GSUB_only_no_axes_ttf(self):
|
||||
"""Only GSUB, and only in the base master.
|
||||
Designspace file has no <axes> element.
|
||||
|
||||
The variable font will inherit the GSUB table from the
|
||||
base master.
|
||||
"""
|
||||
suffix = '.ttf'
|
||||
ds_path = self.get_test_input('InterpolateLayout3.designspace')
|
||||
ufo_dir = self.get_test_input('master_ufo')
|
||||
ttx_dir = self.get_test_input('master_ttx_interpolatable_ttf')
|
||||
|
||||
self.temp_dir()
|
||||
ttx_paths = self.get_file_list(ttx_dir, '.ttx', 'TestFamily2-')
|
||||
for path in ttx_paths:
|
||||
self.compile_font(path, suffix, self.tempdir)
|
||||
|
||||
finder = lambda s: s.replace(ufo_dir, self.tempdir).replace('.ufo', suffix)
|
||||
instfont = interpolate_layout(ds_path, {'weight': 500}, finder)
|
||||
|
||||
tables = ['GSUB']
|
||||
expected_ttx_path = self.get_test_output('InterpolateLayout.ttx')
|
||||
self.expect_ttx(instfont, expected_ttx_path, tables)
|
||||
self.check_ttx_dump(instfont, expected_ttx_path, tables, suffix)
|
||||
|
||||
|
||||
def test_varlib_interpolate_layout_main_ttf(self):
|
||||
"""Mostly for testing varLib.interpolate_layout.main()
|
||||
"""
|
||||
suffix = '.ttf'
|
||||
ds_path = self.get_test_input('Build.designspace')
|
||||
ufo_dir = self.get_test_input('master_ufo')
|
||||
ttx_dir = self.get_test_input('master_ttx_interpolatable_ttf')
|
||||
|
||||
self.temp_dir()
|
||||
ttf_dir = os.path.join(self.tempdir, 'master_ttf_interpolatable')
|
||||
os.makedirs(ttf_dir)
|
||||
ttx_paths = self.get_file_list(ttx_dir, '.ttx', 'TestFamily-')
|
||||
for path in ttx_paths:
|
||||
self.compile_font(path, suffix, ttf_dir)
|
||||
|
||||
finder = lambda s: s.replace(ufo_dir, ttf_dir).replace('.ufo', suffix)
|
||||
varfont, _, _ = build(ds_path, finder)
|
||||
varfont_name = 'InterpolateLayoutMain'
|
||||
varfont_path = os.path.join(self.tempdir, varfont_name + suffix)
|
||||
varfont.save(varfont_path)
|
||||
|
||||
ds_copy = os.path.splitext(varfont_path)[0] + '.designspace'
|
||||
shutil.copy2(ds_path, ds_copy)
|
||||
args = [ds_copy, 'wght=500', 'cntr=50']
|
||||
interpolate_layout_main(args)
|
||||
|
||||
instfont_path = os.path.splitext(varfont_path)[0] + '-instance' + suffix
|
||||
instfont = TTFont(instfont_path)
|
||||
tables = [table_tag for table_tag in instfont.keys() if table_tag != 'head']
|
||||
expected_ttx_path = self.get_test_output(varfont_name + '.ttx')
|
||||
self.expect_ttx(instfont, expected_ttx_path, tables)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
sys.exit(unittest.main())
|
||||
|
@ -38,10 +38,13 @@ class MutatorTest(unittest.TestCase):
|
||||
return os.path.join(path, "data", "test_results", test_file_or_folder)
|
||||
|
||||
@staticmethod
|
||||
def get_file_list(folder, suffix):
|
||||
def get_file_list(folder, suffix, prefix=''):
|
||||
all_files = os.listdir(folder)
|
||||
return [os.path.abspath(os.path.join(folder, p)) for p in all_files
|
||||
if p.endswith(suffix)]
|
||||
file_list = []
|
||||
for p in all_files:
|
||||
if p.startswith(prefix) and p.endswith(suffix):
|
||||
file_list.append(os.path.abspath(os.path.join(folder, p)))
|
||||
return file_list
|
||||
|
||||
def temp_path(self, suffix):
|
||||
self.temp_dir()
|
||||
@ -94,8 +97,8 @@ class MutatorTest(unittest.TestCase):
|
||||
ufo_dir = self.get_test_input('master_ufo')
|
||||
ttx_dir = self.get_test_input('master_ttx_interpolatable_ttf')
|
||||
|
||||
ttx_paths = self.get_file_list(ttx_dir, '.ttx')
|
||||
self.temp_dir()
|
||||
ttx_paths = self.get_file_list(ttx_dir, '.ttx', 'TestFamily-')
|
||||
for path in ttx_paths:
|
||||
self.compile_font(path, suffix, self.tempdir)
|
||||
|
||||
@ -111,8 +114,8 @@ class MutatorTest(unittest.TestCase):
|
||||
instfont_path = os.path.splitext(varfont_path)[0] + '-instance' + suffix
|
||||
instfont = TTFont(instfont_path)
|
||||
tables = [table_tag for table_tag in instfont.keys() if table_tag != 'head']
|
||||
expected_ttx = self.get_test_output(varfont_name + '.ttx')
|
||||
self.expect_ttx(instfont, expected_ttx, tables)
|
||||
expected_ttx_path = self.get_test_output(varfont_name + '.ttx')
|
||||
self.expect_ttx(instfont, expected_ttx_path, tables)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
@ -2,6 +2,7 @@ from __future__ import print_function, division, absolute_import
|
||||
from fontTools.misc.py23 import *
|
||||
from fontTools.ttLib import TTFont
|
||||
from fontTools.varLib import build
|
||||
from fontTools.varLib import main as varLib_main
|
||||
import difflib
|
||||
import os
|
||||
import shutil
|
||||
@ -37,10 +38,13 @@ class BuildTest(unittest.TestCase):
|
||||
return os.path.join(path, "data", "test_results", test_file_or_folder)
|
||||
|
||||
@staticmethod
|
||||
def get_file_list(folder, suffix):
|
||||
def get_file_list(folder, suffix, prefix=''):
|
||||
all_files = os.listdir(folder)
|
||||
return [os.path.abspath(os.path.join(folder, p)) for p in all_files
|
||||
if p.endswith(suffix)]
|
||||
file_list = []
|
||||
for p in all_files:
|
||||
if p.startswith(prefix) and p.endswith(suffix):
|
||||
file_list.append(os.path.abspath(os.path.join(folder, p)))
|
||||
return file_list
|
||||
|
||||
def temp_path(self, suffix):
|
||||
self.temp_dir()
|
||||
@ -94,13 +98,16 @@ class BuildTest(unittest.TestCase):
|
||||
# -----
|
||||
|
||||
def test_varlib_build_ttf(self):
|
||||
"""Designspace file contains <axes> element.
|
||||
build() is called without an axisMap parameter.
|
||||
"""
|
||||
suffix = '.ttf'
|
||||
ds_path = self.get_test_input('Build.designspace')
|
||||
ufo_dir = self.get_test_input('master_ufo')
|
||||
ttx_dir = self.get_test_input('master_ttx_interpolatable_ttf')
|
||||
|
||||
ttx_paths = self.get_file_list(ttx_dir, '.ttx')
|
||||
self.temp_dir()
|
||||
ttx_paths = self.get_file_list(ttx_dir, '.ttx', 'TestFamily-')
|
||||
for path in ttx_paths:
|
||||
self.compile_font(path, suffix, self.tempdir)
|
||||
|
||||
@ -113,5 +120,78 @@ class BuildTest(unittest.TestCase):
|
||||
self.check_ttx_dump(varfont, expected_ttx_path, tables, suffix)
|
||||
|
||||
|
||||
def test_varlib_build2_ttf(self):
|
||||
"""Designspace file does not contain an <axes> element.
|
||||
build() is called with an axisMap parameter.
|
||||
"""
|
||||
suffix = '.ttf'
|
||||
ds_path = self.get_test_input('Build2.designspace')
|
||||
ufo_dir = self.get_test_input('master_ufo')
|
||||
ttx_dir = self.get_test_input('master_ttx_interpolatable_ttf')
|
||||
|
||||
self.temp_dir()
|
||||
ttx_paths = self.get_file_list(ttx_dir, '.ttx', 'TestFamily-')
|
||||
for path in ttx_paths:
|
||||
self.compile_font(path, suffix, self.tempdir)
|
||||
|
||||
axisMap = {'contrast': ('cntr', 'Contrast')}
|
||||
finder = lambda s: s.replace(ufo_dir, self.tempdir).replace('.ufo', suffix)
|
||||
varfont, model, _ = build(ds_path, finder, axisMap)
|
||||
|
||||
tables = ['GDEF', 'HVAR', 'fvar', 'gvar']
|
||||
expected_ttx_path = self.get_test_output('Build.ttx')
|
||||
self.expect_ttx(varfont, expected_ttx_path, tables)
|
||||
self.check_ttx_dump(varfont, expected_ttx_path, tables, suffix)
|
||||
|
||||
|
||||
def test_varlib_build3_ttf(self):
|
||||
"""Designspace file does not contain an <axes> element.
|
||||
build() is called without an axisMap parameter.
|
||||
"""
|
||||
suffix = '.ttf'
|
||||
ds_path = self.get_test_input('InterpolateLayout3.designspace')
|
||||
ufo_dir = self.get_test_input('master_ufo')
|
||||
ttx_dir = self.get_test_input('master_ttx_interpolatable_ttf')
|
||||
|
||||
self.temp_dir()
|
||||
ttx_paths = self.get_file_list(ttx_dir, '.ttx', 'TestFamily2-')
|
||||
for path in ttx_paths:
|
||||
self.compile_font(path, suffix, self.tempdir)
|
||||
|
||||
finder = lambda s: s.replace(ufo_dir, self.tempdir).replace('.ufo', suffix)
|
||||
varfont, model, _ = build(ds_path, finder)
|
||||
|
||||
tables = ['GDEF', 'HVAR', 'fvar', 'gvar']
|
||||
expected_ttx_path = self.get_test_output('Build3.ttx')
|
||||
self.expect_ttx(varfont, expected_ttx_path, tables)
|
||||
self.check_ttx_dump(varfont, expected_ttx_path, tables, suffix)
|
||||
|
||||
|
||||
def test_varlib_main_ttf(self):
|
||||
"""Mostly for testing varLib.main()
|
||||
"""
|
||||
suffix = '.ttf'
|
||||
ds_path = self.get_test_input('Build.designspace')
|
||||
ufo_dir = self.get_test_input('master_ufo')
|
||||
ttx_dir = self.get_test_input('master_ttx_interpolatable_ttf')
|
||||
|
||||
self.temp_dir()
|
||||
ttf_dir = os.path.join(self.tempdir, 'master_ttf_interpolatable')
|
||||
os.makedirs(ttf_dir)
|
||||
ttx_paths = self.get_file_list(ttx_dir, '.ttx', 'TestFamily-')
|
||||
for path in ttx_paths:
|
||||
self.compile_font(path, suffix, ttf_dir)
|
||||
|
||||
ds_copy = os.path.join(self.tempdir, 'BuildMain.designspace')
|
||||
shutil.copy2(ds_path, ds_copy)
|
||||
varLib_main([ds_copy])
|
||||
|
||||
varfont_path = os.path.splitext(ds_copy)[0] + '-VF' + suffix
|
||||
varfont = TTFont(varfont_path)
|
||||
tables = [table_tag for table_tag in varfont.keys() if table_tag != 'head']
|
||||
expected_ttx_path = self.get_test_output('BuildMain.ttx')
|
||||
self.expect_ttx(varfont, expected_ttx_path, tables)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
sys.exit(unittest.main())
|
||||
|
Loading…
x
Reference in New Issue
Block a user