[feaLib] Add test case for class-based pair kerning with zero values

https://github.com/fonttools/fonttools/issues/633
This commit is contained in:
Sascha Brawer 2017-02-16 15:53:19 +01:00
parent 7c67e4a63d
commit fa69c64466
3 changed files with 79 additions and 1 deletions

View File

@ -63,7 +63,7 @@ class BuilderTest(unittest.TestCase):
spec9a spec9b spec9c1 spec9c2 spec9c3 spec9d spec9e spec9f spec9g
spec10
bug453 bug457 bug463 bug501 bug502 bug504 bug505 bug506 bug509
bug512 bug568
bug512 bug568 bug633
name size size2 multiple_feature_blocks omitted_GlyphClassDef
ZeroValue_SinglePos
ZeroValue_PairPos_horizontal ZeroValue_PairPos_vertical

View File

@ -0,0 +1,10 @@
# https://github.com/fonttools/fonttools/issues/633
@public.kern1.K = [K X];
@public.kern2.O = [C O];
@public.kern2.V = [V W];
feature kern {
pos @public.kern1.K @public.kern2.O -20;
pos @public.kern1.K @public.kern2.V 0;
} kern;

View File

@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8"?>
<ttFont sfntVersion="true" ttLibVersion="3.0">
<GPOS>
<Version value="0x00010000"/>
<ScriptList>
<!-- ScriptCount=1 -->
<ScriptRecord index="0">
<ScriptTag value="DFLT"/>
<Script>
<DefaultLangSys>
<ReqFeatureIndex value="65535"/>
<!-- FeatureCount=1 -->
<FeatureIndex index="0" value="0"/>
</DefaultLangSys>
<!-- LangSysCount=0 -->
</Script>
</ScriptRecord>
</ScriptList>
<FeatureList>
<!-- FeatureCount=1 -->
<FeatureRecord index="0">
<FeatureTag value="kern"/>
<Feature>
<!-- LookupCount=1 -->
<LookupListIndex index="0" value="0"/>
</Feature>
</FeatureRecord>
</FeatureList>
<LookupList>
<!-- LookupCount=1 -->
<Lookup index="0">
<LookupType value="2"/>
<LookupFlag value="0"/>
<!-- SubTableCount=1 -->
<PairPos index="0" Format="2">
<Coverage>
<Glyph value="K"/>
<Glyph value="X"/>
</Coverage>
<ValueFormat1 value="4"/>
<ValueFormat2 value="0"/>
<ClassDef1>
</ClassDef1>
<ClassDef2>
<ClassDef glyph="C" class="2"/>
<ClassDef glyph="O" class="2"/>
<ClassDef glyph="V" class="1"/>
<ClassDef glyph="W" class="1"/>
</ClassDef2>
<!-- Class1Count=1 -->
<!-- Class2Count=3 -->
<Class1Record index="0">
<Class2Record index="0">
</Class2Record>
<Class2Record index="1">
<Value1 XAdvance="0"/>
</Class2Record>
<Class2Record index="2">
<Value1 XAdvance="-20"/>
</Class2Record>
</Class1Record>
</PairPos>
</Lookup>
</LookupList>
</GPOS>
</ttFont>