|
THotPDF GPOS Kerning and Placement Methods THotPDF API reference
|
THotPDF Methods Auto Shaping GSUB |
|
Documents HotPDF's GPOS pair-kerning, contextual kerning, vertical kerning, cursive-anchor, mark-positioning, and mark-to-ligature queries plus the ShapingFeatures flags that apply them during text output
Delphi syntax function HasGPOSKerning: Boolean; function GetGPOSPairAdjustment(FirstGID, SecondGID: Word): Integer; function GetGPOSPairAdjustment(FirstGID, SecondGID: Word; out AXPlacement, AYPlacement, AYAdvance: Integer): Integer; function GetGPOSContextualKernRun(const GIDs: array of Word): TArray<Integer>; function HasGPOSVerticalKern: Boolean; function GetGPOSVerticalKern(FirstGID, SecondGID: Word): Integer; function GetGPOSMarkOffset(BaseGID, MarkGID: Word; out DX, DY: Integer): Boolean; function GetGPOSMarkMarkOffset(BaseMarkGID, AttachMarkGID: Word; out DX, DY: Integer): Boolean; function HasGPOSCursive: Boolean; function GetGPOSCursiveAnchors(GID: Word; out EntryX, EntryY, ExitX, ExitY: Integer; out HasEntry, HasExit: Boolean): Boolean; function GetGPOSMarkToLigatureOffset(LigGID: Word; ComponentIndex: Integer; MarkGID: Word; out DX, DY: Integer): Boolean; function ApplyMarkToLigatureShaping(const Wide: UnicodeString): UnicodeString;
Covered APIs
Usage notes Pair kerning returns signed advance and placement adjustments in a 1000-unit em. Contextual kerning resolves Type 7 and Type 8 lookups across a glyph run. Mark positioning covers Mark-to-Base, Mark-to-Mark, and Mark-to-Ligature anchors. ApplyMarkToLigatureShaping prepares the run-level ligature component data used by sfMarkToLigature. Cursive attachment aligns an exit anchor on one glyph to an entry anchor on the next glyph, which is most useful after native Arabic GSUB shaping has produced the font-specific contextual glyph IDs that carry those anchors. The emit path applies these only when the matching shaping flag is enabled
See also: ShapingFeatures OpenType GSUB Engine Automatic Shaping Pipeline |