THPDFPage.UnicodeTextOut

THPDFPage

 

Arriba  Anterior  Siguiente

Muestra texto representado por una cadena o un búfer Unicode

 

Este procedimiento se conserva por compatibilidad con versiones anteriores y comparte la canalización de fuentes actual de TextOut. Úsalo cuando el código existente ya pasa búferes WideString o UTF-16

 

Sintaxis Delphi:

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

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

 

Descripción:

Este procedimiento imprime una línea de texto representada por un búfer Unicode ( Text: PWORD, TextLength: Integer ) o una cadena Unicode ( Text: WideString ) desde el punto X, Y usando la orientación Angle en grados

 

Para las fuentes Unicode incrustadas, HotPDF ahora actualiza el estado de glifos cuando cambia la fuente, resuelve los identificadores de glifo a partir de la fuente activa de Windows y escribe los datos ToUnicode correspondientes para el PDF generado. Esto mejora la representación entre visores para fuentes incrustadas como Calibri

 

Cuando la fuente activa se ha cargado primero con RegisterUnicodeTTF, los caracteres Unicode del plano suplementario, como U+1F600, se resuelven mediante los datos cmap formato 12 de la fuente y se emiten como un CID interno en el flujo de texto de la página. La salida de la página reutiliza el recurso de fuente Type 0 registrado, de modo que la finalización actualiza el mismo estado de uso de /CIDToGIDMap, la fuente descendiente /W, /ToUnicode y el subconjunto de fuente usado por los flujos de apariencia Unicode de AcroForm

 

Tests\Delphi\FontTest proporciona una muestra práctica de comparación para TextOut y la validación de fuentes incrustadas

 

Ejemplo de código

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