|
Dokumentiert HotPDFs GPOS-Abfragen für Paar-Kerning, kontextuelles Kerning, vertikales Kerning, Cursive-Anker, Mark-Positionierung und Mark-to-Ligature sowie die ShapingFeatures-Flags, die sie während der Textausgabe anwenden
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 GetGPOSLigatureComponentCount(LigGID: Word): Integer;
function ApplyMarkToLigatureShaping(const Wide: UnicodeString): UnicodeString;
Abgedeckte APIs
| API | Verwendungshinweise |
HasGPOSKerning | Meldet, ob die registrierte Unicode-Schriftart GPOS-Kerning-Lookups bereitstellt |
GetGPOSPairAdjustment | Gibt die vorzeichenbehaftete Vorschubsanpassung für ein geordnetes Glyphenpaar zurück und kann über die Überladung auch platzierungsabhängige X/Y-Versätze zurückgeben |
GetGPOSContextualKernRun | Gibt kontextuelle Kerning-Anpassungen pro Glyphe zurück, indem GPOS-Typ-7- und Typ-8-Positionierungsregeln über einen Glyphenlauf aufgelöst werden |
HasGPOSVerticalKern | Meldet, ob die registrierte Unicode-Schriftart vertikales Kerning oder vertikale proportionale Anpassungs-Lookups bereitstellt |
GetGPOSVerticalKern | Gibt die vorzeichenbehaftete vertikale YAdvance-Anpassung aus vkrn- oder vpal-Lookups für ein geordnetes Glyphenpaar zurück |
GetGPOSMarkOffset | Gibt Mark-to-Base-Platzierungsversätze zum Anfügen einer Markierungs-Glyphe an eine Basis-Glyphe zurück |
GetGPOSMarkMarkOffset | Gibt Mark-to-Mark-Platzierungsversätze zum Stapeln einer Markierungs-Glyphe auf einer anderen zurück |
HasGPOSCursive | Meldet, ob die registrierte Unicode-Schriftart GPOS-Schreibschriftverbindungs-Lookups bereitstellt |
GetGPOSCursiveAnchors | Gibt Eingangs- und Ausgangsschreibschriftanker für eine Glyphe zurück, wenn die Schriftart eine Schreibschriftverbindungsregel bereitstellt |
GetGPOSMarkToLigatureOffset | Gibt Mark-to-Ligature-Platzierungsversätze zum Anfügen einer Markierung an eine bestimmte Ligaturkomponente zurück |
GetGPOSLigatureComponentCount | Returns the number of mark-attachment components recorded for a ligature glyph so callers can choose a valid ComponentIndex before calling GetGPOSMarkToLigatureOffset |
ApplyMarkToLigatureShaping | Erfasst die Ligaturkomponentenzugehörigkeit, damit Mark-to-Ligature-Versätze während der Textausgabe angewendet werden können |
sfKerning | Aktiviert GPOS-Paarkerning-Anpassungen während der Unicode-Textausgabe von links nach rechts |
sfMarkPositioning | Aktiviert GPOS-Mark-to-Base- und Mark-to-Mark-Versätze für kombinierende Zeichen |
sfMarkToLigature | Aktiviert GPOS-Mark-to-Ligature-Versätze für Zeichen, die an einzelnen Ligaturkomponenten angebracht sind |
sfCursiveAttachment | Aktiviert die GPOS-Schreibschrift-Eingangs-/Ausgangsankerausrichtung während der Unicode-Textausgabe, einschließlich von rechts nach links verlaufender arabischer Abschnitte, die durch gestaltet wurden sfArabicGSUB |
sfVerticalKerning | Aktiviert GPOS-vkrn- und -vpal-Vertikalvorschub-Anpassungen im vertikalen Textausgabepfad |
Verwendungshinweise
Paarkerning gibt vorzeichenbehaftete Vorschub- und Platzierungsanpassungen in einem 1000-Einheiten-Em zurück; kontextuelles Kerning löst Typ-7- und Typ-8-Lookups über einen Glyphenlauf auf; Markierungspositionierung deckt Mark-to-Base-, Mark-to-Mark- und Mark-to-Ligature-Anker ab; ApplyMarkToLigatureShaping bereitet die Ligaturkomponentendaten auf Laufebene vor, die von sfMarkToLigature verwendet werden; Schreibschrift-Verbindung richtet einen Ausgangsanker auf einer Glyphe an einem Eingangsanker auf der nächsten Glyphe aus, was besonders nützlich ist, nachdem die native arabische GSUB-Gestaltung die schriftspezifischen kontextuellen Glyphen-IDs erzeugt hat, die diese Anker tragen; der Ausgabepfad wendet diese nur an, wenn das entsprechende Gestaltungsflag aktiviert ist
See also: ShapingFeatures OpenType-GSUB-Engine Automatische Textgestaltungspipeline
|