THPDFHeadlessDocument.SetTextFieldValueWithAppearance

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

Met à jour un champ texte AcroForm terminal accessible en écriture et construit une apparence normale explicite pour chaque widget existant, en utilisant le même graphe d'objets document sur Linux natif et Windows

Les rectangles de widgets fournissent les dimensions de l'apparence ; le Q hérité du champ fournit l'alignement gauche, centre ou droite quand il est présent, sinon l'alignement des options s'applique

Le profil prend en charge le texte simple sur une ligne ou multiligne, le wrapping de mots mesuré avec fallback de caractères, les sauts de ligne CR/LF, la taille fixe ou l'auto-ajustement, les cellules comb avec un MaxLen hérité positif, et les rotations de widgets par multiples de 90 degrés

Les scripts complexes, runs bidi, ligatures et séquences combinantes utilisent HarfBuzz et FriBidi quand ShapeComplexText est activé ; le texte Unicode direct reste indépendant de ces runtimes, et les glyphes manquants ou les paires surrogate malformées produisent un diagnostic d'apparence

Le wrapping multiligne complexe opère sur les clusters Unicode logiques avant le réordonnancement bidi et le reshaping ; les cellules comb conservent le profil direct d'un glyphe par scalaire

Pour un champ rich text existant, cette méthode remplace le contenu par un style simple et synchronise V, RV et l'apparence de chaque widget ; utilisez SetRichTextFieldValueWithAppearance pour fournir des styles mixtes

Les champs password génèrent une puce par scalaire Unicode et conservent la valeur Unicode réelle du champ dans V ; les mappages de glyphes d'apparence et le texte d'accessibilité contiennent le masque, tandis que la valeur suit la politique de chiffrement du document

Les champs password ne peuvent pas être multiligne ni comb ; un Unicode malformé, des caractères de contrôle, des glyphes de masque manquants, l'annulation et l'épuisement de ressources préservent le champ d'origine

Les champs file-select affichent le chemin Unicode littéral comme texte de champ ordinaire ; cette opération n'ouvre, n'exécute ni ne joint le fichier sélectionné

Les polices exigent des contours TrueType nommés valides et des metrics réels, avec des drapeaux d'embarquement installable ou editable ; l'embarquement de la police complète honore les permissions no-subsetting et rejette les permissions restricted, preview-and-print, bitmap-only, manquantes et inconnues

La méthode prépare tous les remplacements de champs, dictionnaires d'apparence, nouveaux objets police et Form, et budgets de sérialisation avant de modifier un champ ; les échecs de preflight préservent sa valeur précédente et ses liens d'apparence

Les nouveaux objets sont détenus par le document et sauvegardés via le writer incrémental borné d'origine, y compris le chiffrement des nouvelles chaînes et streams sous la politique AES-256 R5 ou R6 d'origine

NeedAppearances est effacé après que des apparences explicites couvrent le champ modifié, sauf si une autre édition de valeur seule ou un besoin d'apparence d'origine non résolu demeure

Quand le drapeau d'origine est true, les autres champs hors signature le conservent prudemment à true jusqu'à ce que leurs besoins d'apparence soient satisfaits ; utilisez les méthodes choice et bouton séparées pour régénérer ces champs

Lecture seule, MaxLen, signatures existantes, permissions de certification, permissions de remplissage AES, protection source, annulation et politiques de sortie atomique restent en vigueur

Si le document et les options d'apparence spécifient tous deux des cancellation tokens, ils doivent être le même token

Voir THPDFHeadlessTextAppearanceOptions et HPDFBuildHeadlessTextAppearance pour le contrat borné de polices et de layout