THotPDF GPOS -välistys- ja sijoitusmenetelmät

THotPDF API reference

THotPDF Methods Auto Shaping GSUB

Dokumentoi HotPDF:n GPOS-parin kerningin, kontekstuaalisen kerningin, pystysuuntaisen kerningin, kursiiviankkurin, merkin sijoittelun ja mark-to-ligature-haut sekä ShapingFeatures-liput, jotka soveltavat niitä tekstin ulostulon aikana

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;

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;

Covered APIs

APIUsage notes
HasGPOSKerningRaportoi, tuoko rekisteröity Unicode-fontti näkyville GPOS-kerning-hakuja
GetGPOSPairAdjustmentPalauttaa merkillisen etenemiskorjauksen järjestetylle glyfiparille ja voi myös palauttaa sijoittelun huomioivat X/Y-siirtymät ylikuormitetun metodin kautta
GetGPOSContextualKernRunPalauttaa glyfikohtaiset kontekstuaaliset välistyskorjaukset (kern) selvittämällä GPOS-tyyppien 7 ja 8 sijoittelusäännöt glyfisarjassa
HasGPOSVerticalKernRaportoi, tuoko rekisteröity Unicode-fontti näkyville pystysuuntaisen kerning-haun tai pystysuuntaisen suhteellisen säädön haut
GetGPOSVerticalKernPalauttaa merkillisen pystysuuntaisen YAdvance-korjauksen vkrn- tai vpal-hauista järjestetylle glyfiparille
GetGPOSMarkOffsetPalauttaa merkin sijoitussiirtymät perusmerkkiin (Mark-to-Base) tarkemerkkiglyfin liittämiseksi perusglyfiin
GetGPOSMarkMarkOffsetPalauttaa merkin sijoitussiirtymät merkkiin (Mark-to-Mark) tarkemerkkiglyfien pinoamiseksi päällekkäin
HasGPOSCursiveRaportoi, tuoko rekisteröity Unicode-fontti näkyville GPOS-kaunokirjoitusliitosten hakuja
GetGPOSCursiveAnchorsPalauttaa glyfin kaunokirjoituksen aloitus- ja lopetusankkurit (entry and exit), kun fontti sisältää kaunokirjoitusliitossäännön
GetGPOSMarkToLigatureOffsetPalauttaa merkin sijoitussiirtymät ligatuuriin (Mark-to-Ligature) tarkemerkin liittämiseksi tiettyyn ligatuurin osaan
GetGPOSLigatureComponentCountPalauttaa ligatuuriglyfille tallennettujen merkkikiinnityskomponenttien määrän, jotta kutsujat voivat valita kelvollisen ComponentIndex-indeksin ennen metodin GetGPOSMarkToLigatureOffset kutsumista
ApplyMarkToLigatureShapingTallentaa ligatuurin komponenttien omistajuuden, jotta mark-to-ligature-siirtymiä voidaan käyttää tekstin lähetyksen aikana
sfKerningOta käyttöön GPOS-parivälistyksen säädöt vasemmalta oikealle suuntautuvan Unicode-tekstin lähetyksen aikana
sfMarkPositioningOta käyttöön GPOS Mark-to-Base- ja Mark-to-Mark-siirtymät yhdistäville merkeille
sfMarkToLigatureOta käyttöön GPOS Mark-to-Ligature-siirtymät ligatuurin yksittäisiin osiin kiinnitetyille merkeille
sfCursiveAttachmentOta käyttöön GPOS-kaunokirjoituksen aloitus-/lopetusankkurin kohdistus Unicode-tekstin lähetyksen aikana, mukaan lukien oikealta vasemmalle suuntautuvat arabiankieliset jaksot, jotka on muotoiltu sfArabicGSUB-toiminnolla
sfVerticalKerningOta käyttöön GPOS vkrn- ja vpal-pystysuuntaiset etenemissäädöt pystysuuntaisen tekstin tulostuspolulla

Usage notes

Parivälistys palauttaa etumerkilliset etenemän ja sijoittelun säädöt 1000 yksikön em-ruudussa. Kontekstuaalinen välistys ratkaisee tyypin 7 ja tyypin 8 haut glyyfirunin läpi. Merkin sijoittelu kattaa Mark-to-Base-, Mark-to-Mark- ja Mark-to-Ligature-ankkurit. ApplyMarkToLigatureShaping valmistelee run-tason ligatuurin komponenttitiedot, joita sfMarkToLigature käyttää. Kaunokirjoitusliitos kohdistaa yhden glyyfin poistumisankkurin seuraavan glyyfin aloitusankkuriin, mikä on hyödyllisintä sen jälkeen, kun natiivi arabiankielinen GSUB-muotoilu on tuottanut fonttikohtaiset kontekstuaaliset glyyfi-ID:t, jotka sisältävät nämä ankkurit. Tulostuspolku soveltaa näitä vain, kun vastaava muotoilulippu on käytössä

Katso myös: ShapingFeatures OpenType GSUB Engine Automatic Shaping Pipeline