Exemplo n.º 1
0
 def loadFromFontTools(self, subtable, lookup):
     super(GPOSLookupType6, self).loadFromFontTools(subtable, lookup)
     self.Mark1Coverage = Coverage().loadFromFontTools(subtable.Mark1Coverage)
     self.Mark2Coverage = Coverage().loadFromFontTools(subtable.Mark2Coverage)
     self.Mark1Array = MarkArray().loadFromFontTools(subtable.Mark1Array)
     self.Mark2Array = Mark2Array().loadFromFontTools(subtable.Mark2Array)
     return self
Exemplo n.º 2
0
 def loadFromFontTools(self, subtable, lookup):
     super(GPOSLookupType5, self).loadFromFontTools(subtable, lookup)
     self.MarkCoverage = Coverage().loadFromFontTools(subtable.MarkCoverage)
     self.LigatureCoverage = Coverage().loadFromFontTools(subtable.LigatureCoverage)
     self.MarkArray = MarkArray().loadFromFontTools(subtable.MarkArray)
     self.LigatureArray = LigatureArray().loadFromFontTools(subtable.LigatureArray)
     return self
Exemplo n.º 3
0
 def loadFromFontTools(self, subtable, lookup):
     super(GPOSLookupType7Format3, self).loadFromFontTools(subtable, lookup)
     self.Coverage = [Coverage().loadFromFontTools(coverage) for coverage in subtable.Coverage]
     self.GlyphCount = subtable.GlyphCount
     self.PosCount = subtable.PosCount
     self.PosLookupRecord = [PosLookupRecord().loadFromFontTools(record) for record in subtable.PosLookupRecord]
     return self
Exemplo n.º 4
0
 def loadFromFontTools(self, subtable, lookup):
     super(GSUBLookupType2, self).loadFromFontTools(subtable, lookup)
     try:
         self.Coverage = Coverage().loadFromFontTools(subtable.Coverage)
         self.Sequence = [
             Sequence().loadFromFontTools(sequence)
             for sequence in subtable.Sequence
         ]
     except AttributeError:
         # the API for MultipleSubst lookups changed with fonttools 3.1:
         # https://github.com/fonttools/fonttools/pull/364
         mapping = getattr(subtable, "mapping", {})
         coverage = sorted(mapping.keys())
         self.Coverage = Coverage(coverage)
         self.Sequence = [Sequence(mapping[glyph]) for glyph in coverage]
     return self
Exemplo n.º 5
0
 def loadFromFontTools(self, subtable, lookup):
     super(GPOSLookupType2Format1, self).loadFromFontTools(subtable, lookup)
     self.Coverage = Coverage().loadFromFontTools(subtable.Coverage)
     self.ValueFormat1 = subtable.ValueFormat1
     self.ValueFormat2 = subtable.ValueFormat2
     self.PairSet = [PairSet().loadFromFontTools(pairSet) for pairSet in subtable.PairSet]
     return self
Exemplo n.º 6
0
 def loadFromFontTools(self, subtable, lookup):
     super(GSUBLookupType6Format1, self).loadFromFontTools(subtable, lookup)
     self.Coverage = Coverage().loadFromFontTools(subtable.Coverage)
     self.ChainSubRuleSet = [
         ChainSubRuleSet().loadFromFontTools(chainSubRuleSet)
         for chainSubRuleSet in subtable.ChainSubRuleSet
     ]
     return self
Exemplo n.º 7
0
 def loadFromFontTools(self, subtable, lookup):
     super(GPOSLookupType2Format2, self).loadFromFontTools(subtable, lookup)
     self.Coverage = Coverage().loadFromFontTools(subtable.Coverage)
     self.ValueFormat1 = subtable.ValueFormat1
     self.ValueFormat2 = subtable.ValueFormat2
     self.ClassDef1 = ClassDef().loadFromFontTools(subtable.ClassDef1)
     self.ClassDef2 = ClassDef().loadFromFontTools(subtable.ClassDef2)
     self.Class1Record = [Class1Record().loadFromFontTools(record) for record in subtable.Class1Record]
     return self
Exemplo n.º 8
0
 def loadFromFontTools(self, subtable, lookup):
     super(GSUBLookupType1Format2, self).loadFromFontTools(subtable, lookup)
     # fontTools has a custom implementation of this
     # subtable type, so it needs to be converted
     coverage = []
     self.Substitute = []
     for glyphName, alternate in sorted(subtable.mapping.items()):
         coverage.append(glyphName)
         self.Substitute.append(alternate)
     self.Coverage = Coverage().loadFromFontTools(coverage)
     return self
Exemplo n.º 9
0
 def loadFromFontTools(self, subtable, lookup):
     super(GPOSLookupType7Format2, self).loadFromFontTools(subtable, lookup)
     self.PosFormat = 2
     self.Coverage = Coverage().loadFromFontTools(subtable.Coverage)
     self.ClassDef = ClassDef().loadFromFontTools(subtable.ClassDef)
     self.PosClassSet = []
     for posClassSet in subtable.PosClassSet:
         if posClassSet is None:
             self.PosClassSet.append(None)
         else:
             self.PosClassSet.append(PosClassSet().loadFromFontTools(posClassSet))
     return self
Exemplo n.º 10
0
 def loadFromFontTools(self, subtable, lookup):
     super(GSUBLookupType4, self).loadFromFontTools(subtable, lookup)
     # fontTools has a custom implementation of this
     # subtable type, so it needs to be converted
     coverage = []
     self.LigatureSet = []
     for glyphName, ligature in subtable.ligatures.items():
         ligatureSet = LigatureSet().loadFromFontTools(ligature)
         self.LigatureSet.append(ligatureSet)
         coverage.append(glyphName)
     self.Coverage = Coverage().loadFromFontTools(coverage)
     return self
Exemplo n.º 11
0
 def loadFromFontTools(self, subtable, lookup):
     super(GSUBLookupType5Format2, self).loadFromFontTools(subtable, lookup)
     self.Coverage = Coverage().loadFromFontTools(subtable.Coverage)
     self.ClassDef = ClassDef().loadFromFontTools(subtable.ClassDef)
     self.SubClassSet = []
     for subClassSet in subtable.SubClassSet:
         if subClassSet is None:
             self.SubClassSet.append(None)
         else:
             self.SubClassSet.append(
                 SubClassSet().loadFromFontTools(subClassSet))
     return self
Exemplo n.º 12
0
 def loadFromFontTools(self, subtable, lookup):
     super(GPOSLookupType8Format2, self).loadFromFontTools(subtable, lookup)
     self.Coverage = Coverage().loadFromFontTools(subtable.Coverage)
     self.BacktrackClassDef = ClassDef().loadFromFontTools(subtable.BacktrackClassDef)
     self.InputClassDef = ClassDef().loadFromFontTools(subtable.InputClassDef)
     self.LookAheadClassDef = ClassDef().loadFromFontTools(subtable.LookAheadClassDef)
     self.ChainPosClassSet = []
     for chainPosClassSet in subtable.ChainPosClassSet:
         if chainPosClassSet is None:
             self.ChainPosClassSet.append(None)
         else:
             self.ChainPosClassSet.append(ChainPosClassSet().loadFromFontTools(chainPosClassSet))
     return self
Exemplo n.º 13
0
 def loadFromFontTools(self, subtable, lookup):
     super(GSUBLookupType5Format3, self).loadFromFontTools(subtable, lookup)
     self.Coverage = [
         Coverage().loadFromFontTools(coverage)
         for coverage in subtable.Coverage
     ]
     self.GlyphCount = subtable.GlyphCount
     self.SubstCount = subtable.SubstCount
     self.SubstLookupRecord = [
         SubstLookupRecord().loadFromFontTools(record)
         for record in subtable.SubstLookupRecord
     ]
     return self
Exemplo n.º 14
0
 def loadFromFontTools(self, subtable, lookup):
     super(GSUBLookupType3, self).loadFromFontTools(subtable, lookup)
     # fontTools has a custom implementation of this
     # subtable type, so it needs to be converted
     coverage = []
     self.AlternateSet = []
     for glyphName, alternates in subtable.alternates.items():
         coverage.append(glyphName)
         alternateSet = AlternateSet().loadFromFontTools(alternates)
         self.AlternateSet.append(alternateSet)
     self.Coverage = Coverage().loadFromFontTools(coverage)
     self.AlternateSetCount = len(self.AlternateSet)
     return self
Exemplo n.º 15
0
 def loadFromFontTools(self, ligCaretList):
     self.Coverage = Coverage().loadFromFontTools(ligCaretList.Coverage)
     for ligGlyph in ligCaretList.LigGlyph:
         ligGlyph = LigGlyph().loadFromFontTools(ligGlyph)
         self.LigGlyph.append(ligGlyph)
     return self
Exemplo n.º 16
0
 def loadFromFontTools(self, attachList):
     self.Coverage = Coverage().loadFromFontTools(attachList.Coverage)
     for attachPoint in attachList.AttachPoint:
         attachPoint = AttachPoint().loadFromFontTools(attachPoint)
         self.AttachPoint.append(attachPoint)
     return self
Exemplo n.º 17
0
 def loadFromFontTools(self, subtable, lookup):
     super(GPOSLookupType7Format1, self).loadFromFontTools(subtable, lookup)
     self.Coverage = Coverage().loadFromFontTools(subtable.Coverage)
     self.PosRuleSet = [PosRuleSet().loadFromFontTools(posRuleSet) for posRuleSet in subtable.PosRuleSet]
     return self
Exemplo n.º 18
0
 def loadFromFontTools(self, subtable, lookup):
     super(GPOSLookupType3, self).loadFromFontTools(subtable, lookup)
     self.Coverage = Coverage().loadFromFontTools(subtable.Coverage)
     self.EntryExitRecord = [EntryExitRecord().loadFromFontTools(entryExitRecord) for entryExitRecord in subtable.EntryExitRecord]
     return self
Exemplo n.º 19
0
 def loadFromFontTools(self, subtable, lookup):
     super(GPOSLookupType1Format1, self).loadFromFontTools(subtable, lookup)
     self.Coverage = Coverage().loadFromFontTools(subtable.Coverage)
     self.ValueFormat = subtable.ValueFormat
     self.Value = ValueRecord().loadFromFontTools(subtable.Value)
     return self