THotPDF GPOS alávágási és elhelyezési metódusok

THotPDF API referencia

 

THotPDF metódusok Automatikus formázás GSUB

Dokumentálja a HotPDF GPOS páros alávágási, kontextuális alávágási, függőleges alávágási, folyóírás-horgony (cursive-anchor), jelölés-pozicionálási és jelölés-ligatúra lekérdezéseit, valamint azokat a ShapingFeatures jelzőket, amelyek alkalmazzák őket a szöveg kimenet során

 

Delphi szintaxis

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;

 

Lefedett API-k

APIHasználati megjegyzések
HasGPOSKerningJelenti, hogy a regisztrált Unicode betűtípus közzétesz-e GPOS alávágási lekérdezéseket
GetGPOSPairAdjustmentVisszaadja a rendezett glifapár előrelépési igazítását, és a túlterhelésen keresztül elhelyezés-tudatos X/Y eltolásokat is visszaadhat
GetGPOSContextualKernRunGlifánkénti kontextuális alávágási igazításokat ad vissza a GPOS Type 7 és Type 8 pozicionálási szabályok glifafutáson való feloldásával
HasGPOSVerticalKernJelenti, hogy a regisztrált Unicode betűtípus közzétesz-e függőleges alávágási vagy függőleges arányos igazítási lekérdezéseket
GetGPOSVerticalKernVisszaadja a vkrn vagy vpal lekérdezésekből származó függőleges YAdvance igazítást egy rendezett glifapárra
GetGPOSMarkOffsetVisszaadja a jelölés-alap (Mark-to-Base) elhelyezési eltolásokat egy jelölőglifa alapglifához történő csatolásához
GetGPOSMarkMarkOffsetVisszaadja a jelölés-jelölés (Mark-to-Mark) elhelyezési eltolásokat egy jelölőglifa egy másikra történő halmozásához
HasGPOSCursiveJelenti, hogy a regisztrált Unicode betűtípus közzétesz-e GPOS folyóírás-csatolási lekérdezéseket
GetGPOSCursiveAnchorsVisszaadja a glifa belépési és kilépési folyóírás-horgonyait, ha a betűtípus folyóírás-csatolási szabályt biztosít
GetGPOSMarkToLigatureOffsetVisszaadja a jelölés-ligatúra (Mark-to-Ligature) elhelyezési eltolásokat egy jelölő egy adott ligatúra-komponenshez való csatolásához
GetGPOSLigatureComponentCountVisszaadja a ligatúra-glifához rögzített jelölés-csatolási komponensek számát, így a hívók kiválaszthatnak egy érvényes ComponentIndex-et a GetGPOSMarkToLigatureOffset meghívása előtt
ApplyMarkToLigatureShapingRegisztrálja a ligatúra-komponens tulajdonjogot, így a jelölés-ligatúra eltolások alkalmazhatók a szövegkibocsátás során
sfKerningEngedélyezi a GPOS páros alávágási igazításokat a balról jobbra tartó Unicode szövegkibocsátás során
sfMarkPositioningEngedélyezi a GPOS Mark-to-Base és Mark-to-Mark eltolásokat a kombináló jelölőkhöz
sfMarkToLigatureEngedélyezi a GPOS Mark-to-Ligature eltolásokat az egyes ligatúra-komponensekhez csatolt jelölőkhöz
sfCursiveAttachmentEngedélyezi a GPOS folyóírás belépési/kilépési horgony-igazítását a Unicode szövegkibocsátás során, beleértve a sfArabicGSUB által formázott jobbról balra tartó arab futásokat
sfVerticalKerningEngedélyezi a GPOS vkrn és vpal függőleges előrelépési igazítást a függőleges szövegkimeneti útvonalon

 

Használati megjegyzések

A páros alávágás előjeles előrelépési és elhelyezési igazításokat ad vissza 1000 egységes em-ben. A kontextuális alávágás a Type 7 és Type 8 lekérdezéseket oldja fel a glifafutásokon. A jelölő pozicionálás lefedi a Mark-to-Base, Mark-to-Mark és Mark-to-Ligature horgonyokat. Az ApplyMarkToLigatureShaping előkészíti a futásszintű ligatúra-komponens adatokat, amelyeket a sfMarkToLigature használ. A folyóírás-csatolás egy kilépési horgonyt igazít az egyik glifán a következő glifa belépési horgonyához, ami a natív arab GSUB formázás után a leghasznosabb, miután létrejöttek azokat a horgonyokat hordozó betűtípus-specifikus kontextuális glifa-ID-k. A kibocsátási útvonal csak akkor alkalmazza ezeket, ha a megfelelő formázási jelző engedélyezve van

 

See also: ShapingFeatures OpenType GSUB Engine Automatic Shaping Pipeline