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 y Windows nativos

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

El perfil soporta texto plano de una línea y multiline, word wrapping medido con fallback de caracteres, saltos de línea CR/LF, tamaño fijo o auto-ajuste, 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 faltantes o los pares surrogados malformados producen un diagnóstico de apariencia

El wrapping multiline complejo opera sobre clusters Unicode lógicos antes del reordenamiento bidi y el reshaping; las celdas comb conservan el perfil directo de un glifo por escalar

Para un campo rich-text existente, este método reemplaza el contenido con un estilo plano y sincroniza V, RV y la apariencia de cada widget; usa SetRichTextFieldValueWithAppearance para suministrar estilos mezclados

Los campos de contraseña generan un bullet por 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 multiline ni comb; el Unicode malformado, los caracteres de control, los glifos de máscara faltantes, 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 embedding 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, faltantes y desconocidos

El método prepara todos los reemplazos de campos, diccionarios de apariencia, objetos nuevos de fuente y Form, y 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 nuevas cadenas y streams bajo la política AES-256 R5 o R6 original

NeedAppearances se limpia después de que las apariencias explícitas cubran el campo modificado, salvo que quede otra edición de solo valor o un requerimiento 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 que sus requerimientos de apariencia se satisfagan; usa los métodos separados de choice y botón para regenerar esos campos

El read-only, MaxLen, las firmas existentes, los permisos de certificación, los permisos AES de llenado de formularios, la protección de origen, la cancelación y las políticas de salida atómica siguen vigentes

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

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