Font Fallback and Vertical Text

HotPDF voi valita varasuunnitelmapuolet Unicode-kirjoitusjärjestelmän mukaan, ilmoittaa ratkaisemattomat koodipisteet ja kirjoittaa CJK-tekstiä todellisella pystysuuntaisella CID-kirjoitustilalla

Asiakirjatason varasuunnitelmaketjut

THotPDF.SetFontFallbackChain tallentaa järjestetyn puoliluettelon yhdelle THPDFFontScript -kategoriassa

THPDFPage.TextOutWithFallback ratkaisee jokaisen Unicode-skaalaarin valittua puolta, sen kirjoitusjärjestelmäketjua ja yhteistä ketjua vasten ja tuottaa viereiset skaalaarit samalla puolella yhtenä tekstijuoksuna

Toimeenpanokelpoiset diagnoosit

AnalyzeUnresolvedGlyphs suorittaa vain luvat kattavuustarkastuksen, kun taas TextOutWithFallback tallentaa tuotannon aikana kohdatut ratkaisemattomat skaalaarit

Each THPDFUnresolvedGlyphInfo sisältää skaalaarin koodipisteen, ensisijaisen puolen, luokitellun kirjoitusjärjestelmän ja puolipisteillä erotetun varasuunnitelmaehdotusluettelon

GetUnresolvedGlyphs palauttaa nykyisen asiakirjaraportin ja ClearUnresolvedGlyphs aloittaa uuden raportointivälin

Metodien THotPDF.ResolveFontForCodePoint ja THotPDF.AnalyzeUnresolvedGlyphs erilliset tyylilliset ylikuormat hyväksyvät arvon TFontStyles, joten esitarkistus voi tutkia samaa facea, jota tulosteessa käytetään; niiden alkuperäiset ylikuormat tutkivat edelleen tavallisia faceja

Tekstilaatikot, SVG-upotettu teksti ja ladatut tekstiulkoasut säilyttävät tyylitellyt fonttiperheet varasuunnitelma-asettelun läpi sen sijaan, että käsittelevät PDF:n sisäisiä fonttinimiä järjestelmäperheinä tai vaihtaisivat jokaisen juoksun tavalliseen faceen

Pystysuuntainen CJK-kirjoitus

THPDFPage.TextOutVertical valitsee nykyisen puolen pystyvariantin ja tuottaa yhden Identity-V -tekstijuoksun positioimatta jokaista merkkiä käsin

Example

PDF.SetFontFallbackChain(hfsCJK,
  ['Microsoft YaHei UI', 'Yu Gothic UI', 'Malgun Gothic']);
PDF.SetFontFallbackChain(hfsEmoji, ['Segoe UI Emoji']);

PDF.CurrentPage.SetFont('Arial', [], 12);
PDF.CurrentPage.TextOutWithFallback(72, 72, 0, Text);

PDF.CurrentPage.SetFont('Yu Gothic UI', [], 14);
PDF.CurrentPage.TextOutVertical(420, 72, VerticalText);

Missing := PDF.GetUnresolvedGlyphs;

Related APIs