THPDFHeadlessDocument.SetTextFieldValueWithAppearance

procedure SetTextFieldValueWithAppearance(FieldIndex: Integer;
  const Text: UnicodeString; const TrueTypeFont: SysUtils.TBytes;
  const Options: THPDFHeadlessTextAppearanceOptions);

Actualiza un campo de texto AcroForm terminal escribible y construye una apariencia normal explícita para cada widget existente, usando el mismo grafo de objetos del documento en Linux nativo y Windows

Los rectángulos del widget aportan las dimensiones de la apariencia; el Q heredado del campo aporta alineación izquierda, centro o derecha cuando está presente; en caso contrario se aplica la alineación de las opciones

El perfil soporta texto plano de una línea y multilínea, word wrapping medido con fallback de caracteres, saltos de línea CR/LF, tamaño fijo o autoajuste, celdas comb con un MaxLen heredado positivo y rotaciones de widget en múltiplos de 90 grados

Los scripts complejos, los runs bidi, las ligaduras y las secuencias combinantes usan HarfBuzz y FriBidi cuando ShapeComplexText está activado; el texto Unicode directo sigue siendo independiente de esos runtimes, y los glifos ausentes o los pares surrogate mal formados producen un diagnóstico de apariencia

El wrapping multilínea complejo opera sobre clusters Unicode lógicos antes de la reordenación bidi y del reshaping; las celdas comb conservan el perfil directo de un glifo por escalar

Para un campo rich-text existente, este método sustituye el contenido por un único estilo plano y sincroniza V, RV y la apariencia de todos los widgets; usa SetRichTextFieldValueWithAppearance para suministrar estilos mezclados

Los campos de contraseña generan una viñeta por valor escalar Unicode y conservan el valor Unicode real del campo en V; los mapeos de glifos de la apariencia y el texto de accesibilidad contienen la máscara, mientras que el valor sigue la política de cifrado del documento

Los campos de contraseña no pueden ser campos multiline ni comb; el Unicode mal formado, los caracteres de control, los glifos de máscara ausentes, la cancelación y el agotamiento de recursos preservan el campo original

Los campos file-select muestran la ruta Unicode literal como texto ordinario del campo; esta operación no abre, ejecuta ni adjunta el archivo seleccionado

Las fuentes exigen contornos TrueType con nombre válidos y métricas reales, con flags de incrustación installable o editable; la incrustación de la fuente completa respeta los permisos no-subsetting y rechaza los permisos restricted, preview-and-print, bitmap-only, ausentes y desconocidos

El método prepara todos los reemplazos de campos, diccionarios de apariencia, objetos nuevos de fuente y Form, y los presupuestos de serialización antes de cambiar un campo; los fallos de preflight preservan su valor previo y sus enlaces de apariencia

Los objetos nuevos son propiedad del documento y se guardan a través del writer incremental acotado original, incluido el cifrado de las cadenas y streams nuevos bajo la política AES-256 R5 o R6 original

NeedAppearances se limpia después de que apariencias explícitas cubran el campo modificado, salvo que quede otra edición de solo valor o un requisito de apariencia original sin resolver

Cuando el flag original es true, los demás campos que no son de firma lo conservan en true de forma conservadora hasta satisfacer sus requisitos de apariencia; usa los métodos separados de choice y button para regenerar esos campos

El solo lectura, MaxLen, las firmas existentes, los permisos de certificación, los permisos de relleno AES, la protección de origen, la cancelación y las políticas de salida atómica siguen en vigor

Si tanto el documento como las opciones de apariencia especifican cancellation tokens, deben ser el mismo token

Ver THPDFHeadlessTextAppearanceOptions y HPDFBuildHeadlessTextAppearance para el contrato acotado de fuente y layout