diff options
Diffstat (limited to 'Tests/varLib/data/master_no_overwrite_stat')
4 files changed, 1102 insertions, 0 deletions
diff --git a/Tests/varLib/data/master_no_overwrite_stat/Test-CondensedBlack.ttx b/Tests/varLib/data/master_no_overwrite_stat/Test-CondensedBlack.ttx new file mode 100644 index 00000000..db687a9f --- /dev/null +++ b/Tests/varLib/data/master_no_overwrite_stat/Test-CondensedBlack.ttx @@ -0,0 +1,243 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="4.39"> + + <GlyphOrder> + <!-- The 'id' attribute is only for humans; it is ignored when parsed. --> + <GlyphID id="0" name=".notdef"/> + <GlyphID id="1" name="A"/> + </GlyphOrder> + + <head> + <!-- Most of this table will be recalculated by the compiler --> + <tableVersion value="1.0"/> + <fontRevision value="3.013"/> + <checkSumAdjustment value="0x37268237"/> + <magicNumber value="0x5f0f3cf5"/> + <flags value="00000000 00000011"/> + <unitsPerEm value="1000"/> + <created value="Fri Feb 17 14:29:44 2023"/> + <modified value="Tue Mar 7 12:56:58 2023"/> + <xMin value="-2"/> + <yMin value="-250"/> + <xMax value="583"/> + <yMax value="750"/> + <macStyle value="00000000 00000000"/> + <lowestRecPPEM value="6"/> + <fontDirectionHint value="2"/> + <indexToLocFormat value="0"/> + <glyphDataFormat value="0"/> + </head> + + <hhea> + <tableVersion value="0x00010000"/> + <ascent value="1000"/> + <descent value="-300"/> + <lineGap value="0"/> + <advanceWidthMax value="582"/> + <minLeftSideBearing value="-2"/> + <minRightSideBearing value="-1"/> + <xMaxExtent value="583"/> + <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="2"/> + </hhea> + + <maxp> + <!-- Most of this table will be recalculated by the compiler --> + <tableVersion value="0x10000"/> + <numGlyphs value="2"/> + <maxPoints value="19"/> + <maxContours value="2"/> + <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="541"/> + <usWeightClass value="900"/> + <usWidthClass value="3"/> + <fsType value="00000000 00001000"/> + <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="80"/> + <yStrikeoutPosition value="303"/> + <sFamilyClass value="0"/> + <panose> + <bFamilyType value="0"/> + <bSerifStyle value="0"/> + <bWeight value="0"/> + <bProportion value="0"/> + <bContrast value="0"/> + <bStrokeVariation value="0"/> + <bArmStyle value="0"/> + <bLetterForm value="0"/> + <bMidline value="0"/> + <bXHeight value="0"/> + </panose> + <ulUnicodeRange1 value="00000000 00000000 00000000 00000001"/> + <ulUnicodeRange2 value="00000000 00000000 00000000 00000000"/> + <ulUnicodeRange3 value="00000000 00000000 00000000 00000000"/> + <ulUnicodeRange4 value="00000000 00000000 00000000 00000000"/> + <achVendID value="NONE"/> + <fsSelection value="00000000 01000000"/> + <usFirstCharIndex value="65"/> + <usLastCharIndex value="65"/> + <sTypoAscender value="750"/> + <sTypoDescender value="-250"/> + <sTypoLineGap value="250"/> + <usWinAscent value="1000"/> + <usWinDescent value="300"/> + <ulCodePageRange1 value="00000000 00000000 00000000 00000001"/> + <ulCodePageRange2 value="00000000 00000000 00000000 00000000"/> + <sxHeight value="505"/> + <sCapHeight value="670"/> + <usDefaultChar value="0"/> + <usBreakChar value="32"/> + <usMaxContext value="0"/> + </OS_2> + + <hmtx> + <mtx name=".notdef" width="500" lsb="50"/> + <mtx name="A" width="582" lsb="-2"/> + </hmtx> + + <cmap> + <tableVersion version="0"/> + <cmap_format_4 platformID="0" platEncID="3" language="0"> + <map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A --> + </cmap_format_4> + <cmap_format_4 platformID="3" platEncID="1" language="0"> + <map code="0x41" name="A"/><!-- LATIN CAPITAL 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="50" yMin="-250" xMax="450" yMax="750"> + <contour> + <pt x="50" y="-250" on="1"/> + <pt x="50" y="750" on="1"/> + <pt x="450" y="750" on="1"/> + <pt x="450" y="-250" on="1"/> + </contour> + <contour> + <pt x="100" y="-200" on="1"/> + <pt x="400" y="-200" on="1"/> + <pt x="400" y="700" on="1"/> + <pt x="100" y="700" on="1"/> + </contour> + <instructions/> + </TTGlyph> + + <TTGlyph name="A" xMin="-2" yMin="0" xMax="583" yMax="672"> + <contour> + <pt x="410" y="672" on="1"/> + <pt x="570" y="81" on="1"/> + <pt x="576" y="58" on="0"/> + <pt x="583" y="19" on="0"/> + <pt x="583" y="0" on="1"/> + <pt x="384" y="0" on="1"/> + <pt x="315" y="355" on="1"/> + <pt x="297" y="480" on="1"/> + <pt x="292" y="480" on="1"/> + <pt x="195" y="0" on="1"/> + <pt x="-2" y="0" on="1"/> + <pt x="-2" y="15" on="0"/> + <pt x="2" y="55" on="0"/> + <pt x="9" y="79" on="1"/> + <pt x="176" y="668" on="1"/> + </contour> + <contour> + <pt x="422" y="257" on="1"/> + <pt x="422" y="107" on="1"/> + <pt x="137" y="107" on="1"/> + <pt x="137" y="257" on="1"/> + </contour> + <instructions/> + </TTGlyph> + + </glyf> + + <name> + <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409"> + Test Condensed Black + </namerecord> + <namerecord nameID="2" platformID="3" platEncID="1" langID="0x409"> + Regular + </namerecord> + <namerecord nameID="3" platformID="3" platEncID="1" langID="0x409"> + 3.013;NONE;Test-CondensedBlack + </namerecord> + <namerecord nameID="4" platformID="3" platEncID="1" langID="0x409"> + Test Condensed Black + </namerecord> + <namerecord nameID="5" platformID="3" platEncID="1" langID="0x409"> + Version 3.013 + </namerecord> + <namerecord nameID="6" platformID="3" platEncID="1" langID="0x409"> + Test-CondensedBlack + </namerecord> + <namerecord nameID="16" platformID="3" platEncID="1" langID="0x409"> + Test + </namerecord> + <namerecord nameID="17" platformID="3" platEncID="1" langID="0x409"> + Condensed Black + </namerecord> + </name> + + <post> + <formatType value="2.0"/> + <italicAngle value="0.0"/> + <underlinePosition value="-130"/> + <underlineThickness value="80"/> + <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 --> + </extraNames> + </post> + +</ttFont> diff --git a/Tests/varLib/data/master_no_overwrite_stat/Test-CondensedThin.ttx b/Tests/varLib/data/master_no_overwrite_stat/Test-CondensedThin.ttx new file mode 100644 index 00000000..e3d16464 --- /dev/null +++ b/Tests/varLib/data/master_no_overwrite_stat/Test-CondensedThin.ttx @@ -0,0 +1,373 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="4.39"> + + <GlyphOrder> + <!-- The 'id' attribute is only for humans; it is ignored when parsed. --> + <GlyphID id="0" name=".notdef"/> + <GlyphID id="1" name="A"/> + </GlyphOrder> + + <head> + <!-- Most of this table will be recalculated by the compiler --> + <tableVersion value="1.0"/> + <fontRevision value="3.013"/> + <checkSumAdjustment value="0x176a479f"/> + <magicNumber value="0x5f0f3cf5"/> + <flags value="00000000 00000011"/> + <unitsPerEm value="1000"/> + <created value="Fri Feb 17 14:29:44 2023"/> + <modified value="Tue Mar 7 12:56:58 2023"/> + <xMin value="28"/> + <yMin value="-250"/> + <xMax value="450"/> + <yMax value="750"/> + <macStyle value="00000000 00000000"/> + <lowestRecPPEM value="6"/> + <fontDirectionHint value="2"/> + <indexToLocFormat value="0"/> + <glyphDataFormat value="0"/> + </head> + + <hhea> + <tableVersion value="0x00010000"/> + <ascent value="1000"/> + <descent value="-300"/> + <lineGap value="0"/> + <advanceWidthMax value="500"/> + <minLeftSideBearing value="28"/> + <minRightSideBearing value="31"/> + <xMaxExtent value="450"/> + <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="2"/> + </hhea> + + <maxp> + <!-- Most of this table will be recalculated by the compiler --> + <tableVersion value="0x10000"/> + <numGlyphs value="2"/> + <maxPoints value="19"/> + <maxContours value="2"/> + <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="482"/> + <usWeightClass value="100"/> + <usWidthClass value="3"/> + <fsType value="00000000 00001000"/> + <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="25"/> + <yStrikeoutPosition value="274"/> + <sFamilyClass value="0"/> + <panose> + <bFamilyType value="0"/> + <bSerifStyle value="0"/> + <bWeight value="0"/> + <bProportion value="0"/> + <bContrast value="0"/> + <bStrokeVariation value="0"/> + <bArmStyle value="0"/> + <bLetterForm value="0"/> + <bMidline value="0"/> + <bXHeight value="0"/> + </panose> + <ulUnicodeRange1 value="00000000 00000000 00000000 00000001"/> + <ulUnicodeRange2 value="00000000 00000000 00000000 00000000"/> + <ulUnicodeRange3 value="00000000 00000000 00000000 00000000"/> + <ulUnicodeRange4 value="00000000 00000000 00000000 00000000"/> + <achVendID value="NONE"/> + <fsSelection value="00000000 01000000"/> + <usFirstCharIndex value="65"/> + <usLastCharIndex value="65"/> + <sTypoAscender value="750"/> + <sTypoDescender value="-250"/> + <sTypoLineGap value="250"/> + <usWinAscent value="1000"/> + <usWinDescent value="300"/> + <ulCodePageRange1 value="00000000 00000000 00000000 00000001"/> + <ulCodePageRange2 value="00000000 00000000 00000000 00000000"/> + <sxHeight value="456"/> + <sCapHeight value="670"/> + <usDefaultChar value="0"/> + <usBreakChar value="32"/> + <usMaxContext value="0"/> + </OS_2> + + <hmtx> + <mtx name=".notdef" width="500" lsb="50"/> + <mtx name="A" width="464" lsb="28"/> + </hmtx> + + <cmap> + <tableVersion version="0"/> + <cmap_format_4 platformID="0" platEncID="3" language="0"> + <map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A --> + </cmap_format_4> + <cmap_format_4 platformID="3" platEncID="1" language="0"> + <map code="0x41" name="A"/><!-- LATIN CAPITAL 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="50" yMin="-250" xMax="450" yMax="750"> + <contour> + <pt x="50" y="-250" on="1"/> + <pt x="50" y="750" on="1"/> + <pt x="450" y="750" on="1"/> + <pt x="450" y="-250" on="1"/> + </contour> + <contour> + <pt x="100" y="-200" on="1"/> + <pt x="400" y="-200" on="1"/> + <pt x="400" y="700" on="1"/> + <pt x="100" y="700" on="1"/> + </contour> + <instructions/> + </TTGlyph> + + <TTGlyph name="A" xMin="28" yMin="0" xMax="433" yMax="672"> + <contour> + <pt x="247" y="672" on="1"/> + <pt x="408" y="90" on="1"/> + <pt x="414" y="68" on="0"/> + <pt x="427" y="23" on="0"/> + <pt x="433" y="0" on="1"/> + <pt x="399" y="0" on="1"/> + <pt x="266" y="482" on="1"/> + <pt x="235" y="613" on="1"/> + <pt x="233" y="613" on="1"/> + <pt x="62" y="0" on="1"/> + <pt x="28" y="0" on="1"/> + <pt x="35" y="23" on="0"/> + <pt x="47" y="68" on="0"/> + <pt x="54" y="90" on="1"/> + <pt x="218" y="668" on="1"/> + </contour> + <contour> + <pt x="354" y="244" on="1"/> + <pt x="354" y="217" on="1"/> + <pt x="109" y="217" on="1"/> + <pt x="109" y="244" on="1"/> + </contour> + <instructions/> + </TTGlyph> + + </glyf> + + <name> + <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409"> + Test Condensed Thin + </namerecord> + <namerecord nameID="2" platformID="3" platEncID="1" langID="0x409"> + Regular + </namerecord> + <namerecord nameID="3" platformID="3" platEncID="1" langID="0x409"> + 3.013;NONE;Test-CondensedThin + </namerecord> + <namerecord nameID="4" platformID="3" platEncID="1" langID="0x409"> + Test Condensed Thin + </namerecord> + <namerecord nameID="5" platformID="3" platEncID="1" langID="0x409"> + Version 3.013 + </namerecord> + <namerecord nameID="6" platformID="3" platEncID="1" langID="0x409"> + Test-CondensedThin + </namerecord> + <namerecord nameID="16" platformID="3" platEncID="1" langID="0x409"> + Test + </namerecord> + <namerecord nameID="17" platformID="3" platEncID="1" langID="0x409"> + Condensed Thin + </namerecord> + <namerecord nameID="256" platformID="3" platEncID="1" langID="0x409"> + Standard + </namerecord> + <namerecord nameID="257" platformID="3" platEncID="1" langID="0x409"> + Heaviness + </namerecord> + <namerecord nameID="258" platformID="3" platEncID="1" langID="0x409"> + Extralight + </namerecord> + <namerecord nameID="259" platformID="3" platEncID="1" langID="0x409"> + Thin + </namerecord> + <namerecord nameID="260" platformID="3" platEncID="1" langID="0x409"> + Light + </namerecord> + <namerecord nameID="261" platformID="3" platEncID="1" langID="0x409"> + Regular + </namerecord> + <namerecord nameID="262" platformID="3" platEncID="1" langID="0x409"> + Medium + </namerecord> + <namerecord nameID="263" platformID="3" platEncID="1" langID="0x409"> + Semibold + </namerecord> + <namerecord nameID="264" platformID="3" platEncID="1" langID="0x409"> + Bold + </namerecord> + <namerecord nameID="265" platformID="3" platEncID="1" langID="0x409"> + Wideness + </namerecord> + <namerecord nameID="266" platformID="3" platEncID="1" langID="0x409"> + Compressed + </namerecord> + <namerecord nameID="267" platformID="3" platEncID="1" langID="0x409"> + Condensed + </namerecord> + <namerecord nameID="268" platformID="3" platEncID="1" langID="0x409"> + Normal + </namerecord> + <namerecord nameID="269" platformID="3" platEncID="1" langID="0x409"> + Extended + </namerecord> + </name> + + <post> + <formatType value="2.0"/> + <italicAngle value="0.0"/> + <underlinePosition value="-130"/> + <underlineThickness value="25"/> + <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 --> + </extraNames> + </post> + + <STAT> + <Version value="0x00010001"/> + <DesignAxisRecordSize value="8"/> + <!-- DesignAxisCount=2 --> + <DesignAxisRecord> + <Axis index="0"> + <AxisTag value="wght"/> + <AxisNameID value="257"/> <!-- Heaviness --> + <AxisOrdering value="0"/> + </Axis> + <Axis index="1"> + <AxisTag value="wdth"/> + <AxisNameID value="265"/> <!-- Wideness --> + <AxisOrdering value="1"/> + </Axis> + </DesignAxisRecord> + <!-- AxisValueCount=11 --> + <AxisValueArray> + <AxisValue index="0" Format="1"> + <AxisIndex value="0"/> + <Flags value="0"/> + <ValueNameID value="258"/> <!-- Extralight --> + <Value value="100.0"/> + </AxisValue> + <AxisValue index="1" Format="1"> + <AxisIndex value="0"/> + <Flags value="0"/> + <ValueNameID value="259"/> <!-- Thin --> + <Value value="200.0"/> + </AxisValue> + <AxisValue index="2" Format="1"> + <AxisIndex value="0"/> + <Flags value="0"/> + <ValueNameID value="260"/> <!-- Light --> + <Value value="300.0"/> + </AxisValue> + <AxisValue index="3" Format="1"> + <AxisIndex value="0"/> + <Flags value="2"/> <!-- ElidableAxisValueName --> + <ValueNameID value="261"/> <!-- Regular --> + <Value value="400.0"/> + </AxisValue> + <AxisValue index="4" Format="1"> + <AxisIndex value="0"/> + <Flags value="0"/> + <ValueNameID value="262"/> <!-- Medium --> + <Value value="500.0"/> + </AxisValue> + <AxisValue index="5" Format="1"> + <AxisIndex value="0"/> + <Flags value="0"/> + <ValueNameID value="263"/> <!-- Semibold --> + <Value value="600.0"/> + </AxisValue> + <AxisValue index="6" Format="1"> + <AxisIndex value="0"/> + <Flags value="0"/> + <ValueNameID value="264"/> <!-- Bold --> + <Value value="700.0"/> + </AxisValue> + <AxisValue index="7" Format="1"> + <AxisIndex value="1"/> + <Flags value="0"/> + <ValueNameID value="266"/> <!-- Compressed --> + <Value value="80.0"/> + </AxisValue> + <AxisValue index="8" Format="1"> + <AxisIndex value="1"/> + <Flags value="0"/> + <ValueNameID value="267"/> <!-- Condensed --> + <Value value="90.0"/> + </AxisValue> + <AxisValue index="9" Format="1"> + <AxisIndex value="1"/> + <Flags value="0"/> + <ValueNameID value="268"/> <!-- Normal --> + <Value value="100.0"/> + </AxisValue> + <AxisValue index="10" Format="1"> + <AxisIndex value="1"/> + <Flags value="0"/> + <ValueNameID value="269"/> <!-- Extended --> + <Value value="115.0"/> + </AxisValue> + </AxisValueArray> + <ElidedFallbackNameID value="256"/> <!-- Standard --> + </STAT> + +</ttFont> diff --git a/Tests/varLib/data/master_no_overwrite_stat/Test-ExtendedBlack.ttx b/Tests/varLib/data/master_no_overwrite_stat/Test-ExtendedBlack.ttx new file mode 100644 index 00000000..8dc69399 --- /dev/null +++ b/Tests/varLib/data/master_no_overwrite_stat/Test-ExtendedBlack.ttx @@ -0,0 +1,243 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="4.39"> + + <GlyphOrder> + <!-- The 'id' attribute is only for humans; it is ignored when parsed. --> + <GlyphID id="0" name=".notdef"/> + <GlyphID id="1" name="A"/> + </GlyphOrder> + + <head> + <!-- Most of this table will be recalculated by the compiler --> + <tableVersion value="1.0"/> + <fontRevision value="3.013"/> + <checkSumAdjustment value="0xc2b89a77"/> + <magicNumber value="0x5f0f3cf5"/> + <flags value="00000000 00000011"/> + <unitsPerEm value="1000"/> + <created value="Fri Feb 17 14:29:44 2023"/> + <modified value="Tue Mar 7 12:56:58 2023"/> + <xMin value="-6"/> + <yMin value="-250"/> + <xMax value="759"/> + <yMax value="750"/> + <macStyle value="00000000 00000000"/> + <lowestRecPPEM value="6"/> + <fontDirectionHint value="2"/> + <indexToLocFormat value="0"/> + <glyphDataFormat value="0"/> + </head> + + <hhea> + <tableVersion value="0x00010000"/> + <ascent value="1000"/> + <descent value="-300"/> + <lineGap value="0"/> + <advanceWidthMax value="762"/> + <minLeftSideBearing value="-6"/> + <minRightSideBearing value="3"/> + <xMaxExtent value="759"/> + <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="2"/> + </hhea> + + <maxp> + <!-- Most of this table will be recalculated by the compiler --> + <tableVersion value="0x10000"/> + <numGlyphs value="2"/> + <maxPoints value="19"/> + <maxContours value="2"/> + <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="631"/> + <usWeightClass value="900"/> + <usWidthClass value="6"/> + <fsType value="00000000 00001000"/> + <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="100"/> + <yStrikeoutPosition value="303"/> + <sFamilyClass value="0"/> + <panose> + <bFamilyType value="0"/> + <bSerifStyle value="0"/> + <bWeight value="0"/> + <bProportion value="0"/> + <bContrast value="0"/> + <bStrokeVariation value="0"/> + <bArmStyle value="0"/> + <bLetterForm value="0"/> + <bMidline value="0"/> + <bXHeight value="0"/> + </panose> + <ulUnicodeRange1 value="00000000 00000000 00000000 00000001"/> + <ulUnicodeRange2 value="00000000 00000000 00000000 00000000"/> + <ulUnicodeRange3 value="00000000 00000000 00000000 00000000"/> + <ulUnicodeRange4 value="00000000 00000000 00000000 00000000"/> + <achVendID value="NONE"/> + <fsSelection value="00000000 01000000"/> + <usFirstCharIndex value="65"/> + <usLastCharIndex value="65"/> + <sTypoAscender value="750"/> + <sTypoDescender value="-250"/> + <sTypoLineGap value="250"/> + <usWinAscent value="1000"/> + <usWinDescent value="300"/> + <ulCodePageRange1 value="00000000 00000000 00000000 00000001"/> + <ulCodePageRange2 value="00000000 00000000 00000000 00000000"/> + <sxHeight value="505"/> + <sCapHeight value="670"/> + <usDefaultChar value="0"/> + <usBreakChar value="32"/> + <usMaxContext value="0"/> + </OS_2> + + <hmtx> + <mtx name=".notdef" width="500" lsb="50"/> + <mtx name="A" width="762" lsb="-6"/> + </hmtx> + + <cmap> + <tableVersion version="0"/> + <cmap_format_4 platformID="0" platEncID="3" language="0"> + <map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A --> + </cmap_format_4> + <cmap_format_4 platformID="3" platEncID="1" language="0"> + <map code="0x41" name="A"/><!-- LATIN CAPITAL 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="50" yMin="-250" xMax="450" yMax="750"> + <contour> + <pt x="50" y="-250" on="1"/> + <pt x="50" y="750" on="1"/> + <pt x="450" y="750" on="1"/> + <pt x="450" y="-250" on="1"/> + </contour> + <contour> + <pt x="100" y="-200" on="1"/> + <pt x="400" y="-200" on="1"/> + <pt x="400" y="700" on="1"/> + <pt x="100" y="700" on="1"/> + </contour> + <instructions/> + </TTGlyph> + + <TTGlyph name="A" xMin="-6" yMin="0" xMax="759" yMax="672"> + <contour> + <pt x="542" y="672" on="1"/> + <pt x="735" y="121" on="1"/> + <pt x="747" y="86" on="0"/> + <pt x="759" y="24" on="0"/> + <pt x="759" y="0" on="1"/> + <pt x="501" y="0" on="1"/> + <pt x="421" y="258" on="1"/> + <pt x="384" y="458" on="1"/> + <pt x="377" y="458" on="1"/> + <pt x="244" y="0" on="1"/> + <pt x="-6" y="0" on="1"/> + <pt x="-6" y="21" on="0"/> + <pt x="4" y="87" on="0"/> + <pt x="17" y="121" on="1"/> + <pt x="233" y="668" on="1"/> + </contour> + <contour> + <pt x="545" y="259" on="1"/> + <pt x="545" y="92" on="1"/> + <pt x="176" y="92" on="1"/> + <pt x="176" y="259" on="1"/> + </contour> + <instructions/> + </TTGlyph> + + </glyf> + + <name> + <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409"> + Test Extended Black + </namerecord> + <namerecord nameID="2" platformID="3" platEncID="1" langID="0x409"> + Regular + </namerecord> + <namerecord nameID="3" platformID="3" platEncID="1" langID="0x409"> + 3.013;NONE;Test-ExtendedBlack + </namerecord> + <namerecord nameID="4" platformID="3" platEncID="1" langID="0x409"> + Test Extended Black + </namerecord> + <namerecord nameID="5" platformID="3" platEncID="1" langID="0x409"> + Version 3.013 + </namerecord> + <namerecord nameID="6" platformID="3" platEncID="1" langID="0x409"> + Test-ExtendedBlack + </namerecord> + <namerecord nameID="16" platformID="3" platEncID="1" langID="0x409"> + Test + </namerecord> + <namerecord nameID="17" platformID="3" platEncID="1" langID="0x409"> + Extended Black + </namerecord> + </name> + + <post> + <formatType value="2.0"/> + <italicAngle value="0.0"/> + <underlinePosition value="-130"/> + <underlineThickness value="100"/> + <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 --> + </extraNames> + </post> + +</ttFont> diff --git a/Tests/varLib/data/master_no_overwrite_stat/Test-ExtendedThin.ttx b/Tests/varLib/data/master_no_overwrite_stat/Test-ExtendedThin.ttx new file mode 100644 index 00000000..d9209edd --- /dev/null +++ b/Tests/varLib/data/master_no_overwrite_stat/Test-ExtendedThin.ttx @@ -0,0 +1,243 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="4.39"> + + <GlyphOrder> + <!-- The 'id' attribute is only for humans; it is ignored when parsed. --> + <GlyphID id="0" name=".notdef"/> + <GlyphID id="1" name="A"/> + </GlyphOrder> + + <head> + <!-- Most of this table will be recalculated by the compiler --> + <tableVersion value="1.0"/> + <fontRevision value="3.013"/> + <checkSumAdjustment value="0x4af8381f"/> + <magicNumber value="0x5f0f3cf5"/> + <flags value="00000000 00000011"/> + <unitsPerEm value="1000"/> + <created value="Fri Feb 17 14:29:44 2023"/> + <modified value="Tue Mar 7 12:56:58 2023"/> + <xMin value="23"/> + <yMin value="-250"/> + <xMax value="605"/> + <yMax value="750"/> + <macStyle value="00000000 00000000"/> + <lowestRecPPEM value="6"/> + <fontDirectionHint value="2"/> + <indexToLocFormat value="0"/> + <glyphDataFormat value="0"/> + </head> + + <hhea> + <tableVersion value="0x00010000"/> + <ascent value="1000"/> + <descent value="-300"/> + <lineGap value="0"/> + <advanceWidthMax value="633"/> + <minLeftSideBearing value="23"/> + <minRightSideBearing value="28"/> + <xMaxExtent value="605"/> + <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="2"/> + </hhea> + + <maxp> + <!-- Most of this table will be recalculated by the compiler --> + <tableVersion value="0x10000"/> + <numGlyphs value="2"/> + <maxPoints value="19"/> + <maxContours value="2"/> + <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="567"/> + <usWeightClass value="100"/> + <usWidthClass value="6"/> + <fsType value="00000000 00001000"/> + <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="28"/> + <yStrikeoutPosition value="274"/> + <sFamilyClass value="0"/> + <panose> + <bFamilyType value="0"/> + <bSerifStyle value="0"/> + <bWeight value="0"/> + <bProportion value="0"/> + <bContrast value="0"/> + <bStrokeVariation value="0"/> + <bArmStyle value="0"/> + <bLetterForm value="0"/> + <bMidline value="0"/> + <bXHeight value="0"/> + </panose> + <ulUnicodeRange1 value="00000000 00000000 00000000 00000001"/> + <ulUnicodeRange2 value="00000000 00000000 00000000 00000000"/> + <ulUnicodeRange3 value="00000000 00000000 00000000 00000000"/> + <ulUnicodeRange4 value="00000000 00000000 00000000 00000000"/> + <achVendID value="NONE"/> + <fsSelection value="00000000 01000000"/> + <usFirstCharIndex value="65"/> + <usLastCharIndex value="65"/> + <sTypoAscender value="750"/> + <sTypoDescender value="-250"/> + <sTypoLineGap value="250"/> + <usWinAscent value="1000"/> + <usWinDescent value="300"/> + <ulCodePageRange1 value="00000000 00000000 00000000 00000001"/> + <ulCodePageRange2 value="00000000 00000000 00000000 00000000"/> + <sxHeight value="456"/> + <sCapHeight value="670"/> + <usDefaultChar value="0"/> + <usBreakChar value="32"/> + <usMaxContext value="0"/> + </OS_2> + + <hmtx> + <mtx name=".notdef" width="500" lsb="50"/> + <mtx name="A" width="633" lsb="23"/> + </hmtx> + + <cmap> + <tableVersion version="0"/> + <cmap_format_4 platformID="0" platEncID="3" language="0"> + <map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A --> + </cmap_format_4> + <cmap_format_4 platformID="3" platEncID="1" language="0"> + <map code="0x41" name="A"/><!-- LATIN CAPITAL 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="50" yMin="-250" xMax="450" yMax="750"> + <contour> + <pt x="50" y="-250" on="1"/> + <pt x="50" y="750" on="1"/> + <pt x="450" y="750" on="1"/> + <pt x="450" y="-250" on="1"/> + </contour> + <contour> + <pt x="100" y="-200" on="1"/> + <pt x="400" y="-200" on="1"/> + <pt x="400" y="700" on="1"/> + <pt x="100" y="700" on="1"/> + </contour> + <instructions/> + </TTGlyph> + + <TTGlyph name="A" xMin="23" yMin="0" xMax="605" yMax="672"> + <contour> + <pt x="339" y="672" on="1"/> + <pt x="566" y="100" on="1"/> + <pt x="576" y="75" on="0"/> + <pt x="595" y="25" on="0"/> + <pt x="605" y="0" on="1"/> + <pt x="563" y="0" on="1"/> + <pt x="384" y="453" on="1"/> + <pt x="320" y="626" on="1"/> + <pt x="317" y="626" on="1"/> + <pt x="62" y="0" on="1"/> + <pt x="23" y="0" on="1"/> + <pt x="34" y="25" on="0"/> + <pt x="54" y="75" on="0"/> + <pt x="64" y="100" on="1"/> + <pt x="297" y="668" on="1"/> + </contour> + <contour> + <pt x="491" y="250" on="1"/> + <pt x="491" y="217" on="1"/> + <pt x="139" y="217" on="1"/> + <pt x="139" y="250" on="1"/> + </contour> + <instructions/> + </TTGlyph> + + </glyf> + + <name> + <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409"> + Test Extended Thin + </namerecord> + <namerecord nameID="2" platformID="3" platEncID="1" langID="0x409"> + Regular + </namerecord> + <namerecord nameID="3" platformID="3" platEncID="1" langID="0x409"> + 3.013;NONE;Test-ExtendedThin + </namerecord> + <namerecord nameID="4" platformID="3" platEncID="1" langID="0x409"> + Test Extended Thin + </namerecord> + <namerecord nameID="5" platformID="3" platEncID="1" langID="0x409"> + Version 3.013 + </namerecord> + <namerecord nameID="6" platformID="3" platEncID="1" langID="0x409"> + Test-ExtendedThin + </namerecord> + <namerecord nameID="16" platformID="3" platEncID="1" langID="0x409"> + Test + </namerecord> + <namerecord nameID="17" platformID="3" platEncID="1" langID="0x409"> + Extended Thin + </namerecord> + </name> + + <post> + <formatType value="2.0"/> + <italicAngle value="0.0"/> + <underlinePosition value="-130"/> + <underlineThickness value="28"/> + <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 --> + </extraNames> + </post> + +</ttFont> |