Fix handling of combined ligatures and kerning.

Remove hasGlyph helper and ligature tracking array.
Use single call to:
 - CFAttributedStringCreate
 - CTLineCreateWithAttributedString
and a call per bi-di/layout run to:
 - CTRunGetGlyphs for glyphs
 - CTFontGetAdvancesForGlyphs for advances
 - CTRunGetStringIndices for indices of ligatures
And an efficient loop over the substituted characters of ligatures,
to make glyph context calls for incrementing the attribute indices.
This commit is contained in:
Mikael Sand
2018-01-02 23:17:04 +02:00
parent 17a66f3c2c
commit 4a8808b0fb
+469 -530
View File
File diff suppressed because it is too large Load Diff