THPDFPage.UnicodeTextOut

THPDFPage

 

Haut  Précédent  Suivant

Affiche du texte représenté par une chaîne ou un tampon Unicode

 

Cette procédure est conservée pour la compatibilité ascendante et partage le pipeline de police actuel de TextOut. Utilisez-la lorsque le code existant passe déjà des tampons WideString ou UTF-16

 

Syntaxe Delphi :

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

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

 

Description :

Cette procédure imprime une ligne de texte représentée par un tampon Unicode ( Text: PWORD, TextLength: Integer ) ou une chaîne Unicode ( Text: WideString ) depuis le point X, Y en utilisant l'orientation Angle en degrés

 

Pour les polices Unicode intégrées, HotPDF actualise désormais l'état des glyphes lorsque la police change, résout les identifiants de glyphe à partir de la police Windows active et écrit les données ToUnicode correspondantes pour le PDF généré. Cela améliore le rendu dans différents lecteurs pour les polices intégrées comme Calibri

 

Lorsque la police active a d'abord été chargée avec RegisterUnicodeTTF, les caractères Unicode du plan supplémentaire comme U+1F600 sont résolus via les données cmap format 12 de la police et émis comme un CID interne unique dans le flux de texte de la page. La sortie de page réutilise la ressource de police Type 0 enregistrée, de sorte que la finalisation actualise le même état d'utilisation de /CIDToGIDMap, de la police descendante /W, de /ToUnicode et du sous-ensemble de police utilisé par les flux d'apparence Unicode AcroForm

 

Tests\Delphi\FontTest fournit un exemple pratique de comparaison pour TextOut et la validation des polices intégrées

 

Exemple de code

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') );