Native Rich Text Fields
SetRichTextFieldValueWithAppearance skriver synkroniseret plain-tekst V, kanonisk XHTML RV, RichText-feltflaget og rigtige appearances til hver eksisterende widget
Hvert run leverer Unicode-tekst, en fontstil, en positiv punktstørrelse, RGB-farve, valgfri underline eller strikeout, afsnitsbrud samt venstre, center eller højre justering; de fire stilfonte er kalder-leverede Unicode TrueType-programmer med de eksisterende redigerings- og indlejringstjek
Runs bruger som standard 12pt regular sort stil; afsnitsjustering kommer fra dets første run og er som standard venstre
Appliancen bruger rigtige indlejrede stilfonte, glyph-mappings og målte word-fragmenter med delte linjebaselines; gentagne fragmenter deler hvert stilfontprogram inden for en widget
Eksplicitte CR-, LF-, CRLF-, NEL-, LINE SEPARATOR- og PARAGRAPH SEPARATOR-brud samt afsnitsovergange kræver et multiline-felt; målt ombrydning, widget-rotationer og clipping bruger det faktiske widget-rektangel
Den typede opdatering kan aktivere rich text på et plain-tekstfelt, mens password-, file-select- og comb-kombinationer afvises inden mutation
Skrivebeskyttet, MaxLen, autentificerede signeret dokument-politikker, krypterede form-fill-tilladelser, cancellation samt objekt-, font-, glyph- og outputbudgetter gælder stadig
Alle rich-opdateringer forbereder V, RV, Ff og AP-overrides, før dokumentet ændres; gemte strenge og streams beholder den originale AES-256 R5- eller R6-politik
Style-arrays, layoutlinjer og malede fragmenter har hver et loft på 4096 elementer ud over de konfigurerede dokumentgrænser; stilfont-bytes debiteres samlet
Almindelige SetTextFieldValueWithAppearance-kald på et eksisterende rich-felt erstatter dets indhold med den leverede plain-stil og synkroniserer RV; value-only SetTextFieldValue-kald synkroniserer også RV og beholder NeedAppearances=true
GetRichTextFieldValue læser den faktisk gemte XHTML-tekststreng eller UTF-8-tekststream, inklusive nedarvede værdier
Det første run i hvert afsnit vælger dets justering, selv når det run har tom tekst; inline stilændringer og eksplicitte linjeskift beholder den afsnitsjustering
For brede ord i ombrudte multiline-felter deles ved Unicode 17 extended grapheme-grænser, hvilket bevarer combining-sekvenser, supplementary-scalars, emoji-sekvenser og original V/RV-tekst; en udelelig cluster bredere end feltet forbliver intakt og clips
Rektangel- og cirkelkanter males før content-clippet, og valgte multiline-rækker får rigtige blå baggrunde med den målte ascent, descent og afstand for hver rich-linje
Native JSON ABI
{"schemaVersion":1,"type":"forms.fill","fields":[
{"name":"Input","fontFamily":"DejaVu Sans Mono","richTextRuns":[
{"text":"Regular Unicode text "},
{"text":"Bold red text","fontStyle":"bold","fontSize":20,"color":[1,0,0]},
{"text":"Next paragraph","fontStyle":"italic","paragraphBreakBefore":true,
"alignment":"center","underline":true}
]}
]}
richTextRuns er et array af objekter med krævet tekst og valgfri fontStyle, fontSize, color, underline, strikeOut, paragraphBreakBefore og alignment; fontStyle accepterer regular, bold, italic eller boldItalic
Valgfrie fontFamilies-arrays vælger faktiske navngivne programmer pr. run gennem fontFamily, hvor et edit-niveau-array tilsidesætter operationsniveau-arrayet, og udeladte run-labels vælger den første familie
Udeladt run fontSize bruger feltoperationens fontSize, når positiv, ellers 12; en valgfri værdi skal matche den plain-tekst, der udledes af runsene, eksakt med et carriage return mellem eksplicitte afsnit
Stylede runs kræver appearance=true; forms.read returnerer den faktisk gemte XHTML i richText for et rich-felt
ABI'en beholder sit eksisterende operationslayout og forbereder komplet binært og resultatoutput, inden den nye indlæste kontekst committeres; mislykkede skrivninger eller cancellation bevarer det tidligere felt
Accept og tilbageværende arbejde
Tests/Linux/Run-HeadlessRichTextAcceptance.sh og Tests/Linux/HotPDFHeadlessRichTextTests.pas øver rigtige gemte PDF'er; Verify-HeadlessRichText.py tjekker uafhængigt XHTML, værdier, fire rigtige fontprogrammer, glyph-maps, dekorationspaths og synlige widget-pixels
Denne API accepterer typede runs og forbruger default Unicode 17-muligheder over komplette afsnit og bevarer ord-, hårdt mellemrum-, tegnsætnings- og numeriske grupper på tværs af style-ændringer; grupper, der passer i en frisk linje, flyttes sammen med deres faktiske stylede font-advances
Style group-ombrydning beholder også delte baselines for blandede punktstørrelser og forener CRLF på tværs af style-sømme i både faktisk layout og kanonisk XHTML
Grapheme-tilpasning på tværs af styles tildeler komplette for brede logiske clusters til én fysisk linje og beholder faktiske font-, farve- og størrelsesfragmenter samt den eksisterende clipping-adfærd for en udelelig cluster bredere end rektanglet
Kontekstuel joining bruger den omgivende Unicode-tekst, og hver faktisk fysisk linje beholder afsnitsretning, mens blandede bidi- og script-items ordnes på tværs af typede styles
Marks på tværs af styles bruger rigtige GPOS-attachments til faktiske base-, ligatur- og foregående mærke-glyphs og bevarer hver stilfont, punktstørrelse og farve samt synlige glyph-overhæng
Rich FDF- og XFDF-udveksling dekoder den understøttede afgrænsede XHTML-style-profil til rigtige indlejrede fonts og gemte appearances
Eksplicitte directionelle embeddings, overrides, isolater og parvis-bracket-kontekst overlever automatisk ombrydning på tværs af typede styles; én delt logisk afsnitsorden leverer uafhængig fysisk linje-omordning og native kontekstuel glyph-shaping
Clusters, der kun indeholder Unicode-retningskontroller, bevarer den originale logiske værdi og markeringstekst uden at forbruge tegnafstand; synlige clusters og almindelige mellemrum beholder deres konfigurerede advances
Afsnitsafledt linjeorden og cached linjeomordning bevarer komplette UTF-16 scalar-grænser og nulstiller fysisk linje afsluttende whitespace uden at mutere den delte afsnitsrecord
Navngivne fontfamilier leverer eksplicit typet-run og afgrænset XHTML-valg med rigtige familiefonte, uafhængige advances og familiebevidst formularimport
Leveret-familie-fallback vælger komplette graphemes på tværs af authored style-sømme, og Linux JSON og versionerede callbacks binder samme adfærd til faktiske konfigurerede fontprogrammer
Interne style sheets anvender den delte afgrænsede selektorkaskade på native rich-værdier og FDF/XFDF-importer; bredere XHTML/CSS, eksterne style sheets og generelt layout forbliver aktivt arbejde