HPDFBuildHeadlessTextAppearance

function HPDFBuildHeadlessTextAppearance(const Text: UnicodeString;
  const TrueTypeFont: SysUtils.TBytes; FirstObjectNumber: Integer;
  const Options: THPDFHeadlessTextAppearanceOptions): THPDFHeadlessTextAppearance;

Construye un Form XObject Unicode real y sus objetos de fuente usando el parser compartido de HotPDF, las clases de objetos, el lector cmap, los avances y metadata de descriptor TrueType reales, y shaping opcional HarfBuzz/FriBidi

El bundle devuelto posee siete objetos consecutivos a partir de un FirstObjectNumber positivo; usa el método de apariencias del documento para el registro de objetos, los enlaces de campos, el cifrado y la salida incremental acotada

La fuente exige contornos TrueType glyf/loca con nombre, una firma sfnt y head magic consistentes, offsets de glifos ordenados y acotados, y un cmap Unicode completo y válido contenido dentro de la extensión de tabla declarada

La búsqueda Unicode no hace fallback a mapeos Symbol ni MacRoman; los glifos faltantes se rechazan en lugar de reemplazarse por un glifo visualmente no relacionado

El texto soportado es latino horizontal directo, griego, cirílico, CJK simple, Hangul precompuesto, símbolos matemáticos seleccionados y emoji aislados cuando la fuente suministrada contiene cada escalar

El layout multiline CR/LF, el wrapping medido, las celdas comb, las rotaciones de cuarto de vuelta y los bordes rectangulares o circulares los controla el registro de opciones

Con ShapeComplexText activado, los scripts complejos, las secuencias combinantes, el bidi y las ligaduras usan shaping HarfBuzz nativo y ordenamiento de runs FriBidi; los surrogados malformados, los caracteres de control no soportados, los glifos faltantes, los permisos de fuente inválidos y los presupuestos agotados siguen siendo errores

Los glifos complejos reciben posicionamiento individual que incluye offsets de shaping, mapeos ToUnicode conscientes de clusters y ActualText de marked content que retiene el source lógico; los lectores pueden usar su propio orden de extracción de texto de anotaciones

Linux carga libharfbuzz.so.0 y libfribidi.so.0; Windows exige libharfbuzz-0.dll y libfribidi-0.dll de arquitectura coincidente, con rutas explícitas opcionales vía HOTPDF_HARFBUZZ_LIBRARY y HOTPDF_FRIBIDI_LIBRARY

Los bytes originales completos de la fuente se incrustan con su nombre PostScript real, bounds, ascent, descent, ángulo italic y flag de fixed pitch; la cap height usa OS/2 cuando está disponible y, de lo contrario, el ascender de hhea, mientras que StemV usa una estimación conservadora de descriptor fija

Se exige embedding installable o editable; el no-subsetting se respeta con la incrustación completa, y los permisos de embedding restricted, preview-and-print, bitmap-only, ausentes o desconocidos se rechazan

El builder verifica bytes de fuente, conteo de glifos, tamaños de streams y diccionarios, validez de escalares y cancelación antes de devolver un bundle propio

Ver THPDFHeadlessTextAppearanceOptions, THPDFHeadlessTextAppearance y SetTextFieldValueWithAppearance

Las fuentes OpenType CFF 1 se soportan a través del backend de apariencias de fuente compacta, preservando la fuente completa, el mapeo CID real, el texto Unicode, los widths y la política de incrustación