THPDFPage.UnicodeTextOut

THPDFPage

 

Øverst  Forrige  Neste

Viser tekst representert av en Unicode-streng eller en buffer

 

Denne prosedyren er beholdt for bakoverkompatibilitet og deler den gjeldende fontkjeden til TextOut. Bruk den når eksisterende kode allerede sender WideString- eller UTF-16-buffere

 

Delphi-syntaks:

procedure UnicodeTextOut( X, Y: Single; Angle: Extended; Text: PWORD; TextLength: Integer ); overload;

procedure UnicodeTextOut( X, Y: Single; Angle: Extended; Text: WideString ); overload;

 

Beskrivelse:

Denne prosedyren skriver ut en tekstlinje representert av en Unicode-buffer ( Text: PWORD, TextLength: Integer ) eller Unicode-streng ( Text: WideString ) fra punktet X, Y med vinkelen Angle i grader

 

For innebygde Unicode-fonter oppdaterer HotPDF nå glyfstatus når fonten endres, løser glyf-ID-er fra den aktive Windows-fonten og skriver samsvarende ToUnicode-data for den genererte PDF-en. Dette gir bedre gjengivelse på tvers av visningsprogrammer for innebygde fonter som Calibri

 

Når den aktive fonten først er lastet med RegisterUnicodeTTF, løses Unicode-tegn i supplementære plan som U+1F600 gjennom fontens cmap format 12-data og skrives som én intern CID i sidens tekststrøm. Sideutdata gjenbruker den registrerte Type 0-fontressursen, så avslutningen oppdaterer samme /CIDToGIDMap, underordnet font /W, /ToUnicode og brukstilstanden for fontsubsett som også brukes av AcroForm Unicode-utseendestrømmer

 

Tests\Delphi\FontTest gir et praktisk sammenlignings-eksempel for TextOut og validering av innebygde fonter

 

Kodeeksempel

HPDF.FontEmbedding := true;
HPDF.StandardFontEmulation := false;
HPDF.CurrentPage.SetFont( 'Arial Unicode MS', [], 12, 0, False );
HPDF.CurrentPage.UnicodeTextOut( 40, 100, 0, WideString('Unicode output sample') );