Type | Name | Description |
uint16 | SubstFormat | Format identifier |
—format = 1 | ||
Offset | ð Coverage | Offset to Coverage table |
—from beginning of Substitution table | ||
uint16 | SubRuleSetCount | Number of SubRuleSet tables |
—must equal GlyphCount in Coverage table | ||
Offset | ð SubRuleSet | Array of offsets to SubRuleSet tables |
[SubRuleSetCount] | —from beginning of Substitution table | |
—ordered by Coverage Index |
Type | Name | Description |
uint16 | SubRuleCount | Number of SubRule tables |
Offset | ð SubRule[SubRuleCount] | Array of offsets to SubRule tables |
—from beginning of SubRuleSet table | ||
—ordered by preference |
Type | Name | Description |
uint16 | GlyphCount | Total number of glyphs in input glyph sequence |
—includes the first glyph | ||
uint16 | SubstCount | Number of SubstLookupRecords |
GlyphID | Input[GlyphCount - 1] | Array of input GlyphIDs |
—start with second glyph | ||
struct | SubstLookupRecord | Array of SubstLookupRecords |
[SubstCount] | —in design order |
Type | Name | Description |
uint16 | SubstFormat | Format identifier |
—format = 2 | ||
Offset | ð Coverage | Offset to Coverage table |
—from beginning of Substitution table | ||
Offset | ð ClassDef | Offset to glyph ClassDef table |
—from beginning of Substitution table | ||
uint16 | SubClassSetCnt | Number of SubClassSet tables |
Offset | SubClassSet | Array of offsets to SubClassSet tables |
[SubClassSetCnt] | —from beginning of Substitution table | |
—ordered by class | ||
—may be NULL |
Type | Name | Description |
uint16 | SubClassRuleCnt | Number of SubClassRule tables |
Offset | ð SubClassRule | Array of offsets to SubClassRule tables |
[SubClassRuleCnt] | —from beginning of SubClassSet | |
—ordered by preference |
Type | Name | Description |
uint16 | GlyphCount | Total number of classes specified for the context in the rule |
—includes the first class | ||
uint16 | SubstCount | Number of SubstLookupRecords |
uint16 | Class[GlyphCount - 1] | Array of classes |
—beginning with the second class | ||
—to be matched to the input glyph class sequence | ||
struct | SubstLookupRecord | Array of Substitution lookups |
[SubstCount] | —in design order |
Type | Name | Description |
uint16 | SubstFormat | Format identifier |
—format = 3 | ||
uint16 | GlyphCount | Number of glyphs in the input glyph sequence |
uint16 | SubstCount | Number of SubstLookupRecords |
Offset | ð Coverage[GlyphCount] | Array of offsets to Coverage table |
—from beginning of Substitution table | ||
—in glyph sequence order | ||
struct | SubstLookupRecord | Array of SubstLookupRecords |
[SubstCount] | —in design order |
Type | Name | Description |
uint16 | SequenceIndex | Index into current glyph sequence |
—first glyph = 0 | ||
uint16 | LookupListIndex | Lookup to apply to that position |
—zero-based |