Automatic XFA Boolean styles and captions
Unit: HPDFXFA a HPDFXFAHeadless
HPDFXFAWriteHeadlessPDF konzumuje efektivní vlastnosti checkButton a vytváří nativní appearance streamy checkboxů i radio ze skutečného XFA layoutu
Značky a obrysy
Velikost checkButton defaultuje na 10pt a řídí čtvercový region značky uvnitř obsahového regionu pole; explicitní měření velikosti, marginy pole i UI a horizontální i vertikální zarovnání odstavce určí její pozici
Tvary square i round určí obrys; výchozí upřednostňovaná značka je křížek u čtvercového obrysu a vyplněný kruh u kulatého, podle specifikace checkButton v XFA 3.3
Explicitní značky check, circle, cross, diamond, square a star použijí skutečné vektorové cesty; nezávisí na tom, že dodané písmo obsahuje symbol checkboxu
První edge UI ohraničení dodá svou tloušťku, barvu i viditelnost; výchozí obrys je černý, široký 0.5pt, zatímco efektivní barva fontu pole dodá barvu upřednostňované značky
Značka se smrskne na zbývající obsahový region, když její nakonfigurovaná velikost ten region přesáhne; caption či margin, které nezanechají žádný obsahový region, způsobí selhání přípravy kandidáta
Skalární Unicode caption
Skalární text caption si uchová Unicode i oddělovače přesně a stane se skutečným Form XObject s vloženým písmem, referencovaným z každé appearance off, on i neutral toho widgetu
Caption sdílí jednu appearance i graf písma napříč svými stavy a její UTF-16 jednotky se počítají jednou na widget v TXFAHeadlessPDFResult.GlyphUnits
Vlevo a vpravo rezervují šířku caption, nahoře a dole výšku; vynechaná či nulová rezerva použije ke spočtení přirozeného rozsahu caption skutečné glyfové advancy i řádkové metriky dodaného písma
Inline caption předchází značce a explicitní rezervu ignoruje; marginy caption vtlačí text dovnitř jeho alokované oblasti
Velikost i barva výplně písma caption přebije velikost i barvu pole; zarovnání caption odstavce přebije zarovnání pole, zatímco CaptionFontFamilies může dodávat skutečné style řezy i pojmenované rodiny
Skryté i neaktivní caption nezabírají žádnou oblast ani nealokují žádný graf písma; neviditelné caption si uchovají svou oblast, aniž by malovaly či alokovaly glyfy caption
Konzument rich caption navíc konzumuje efektivní XHTML, skutečné nakonfigurované style řezy i výběr rodin, smíšené řádkové metriky i výšky zalomených caption
Třetí stavy checkboxů
Když je allowNeutral zapnuté, třetí uložená položka je neutrální export checkboxu; odpovídající hodnoty si uchovají odlišné nativní /V i widgetové /AS s vlastní položkou /AP /N
Neutrální appearance nakreslí prázdný obrys a tutéž caption; upřednostňovanou značku nekreslí
Pole /Opt checkboxu si u svého jediného widgetu ponechá jednu položku on-exportu, jak vyžaduje model PDF button polí; třetí uložený stav appearance nepřidá druhou volbu widgetu
Prázdné exporty, rezervovaný název Off i názvy začínající XFAOn dostanou kolizně bezpečné nativní stavové aliasy, s použitím svých UTF-8 bajtů jako uppercase hexadecimálního zápisu za XFAOn; třetí původní export lze obnovit z názvu jeho uloženého stavu
Radio člen třetí položku ignoruje a uchovává svůj stávající dvoustavový slovník appearance i identitu skupiny šablony/datascope
Adaptér perzistuje graf počátečního stavu; pozdější nativní operace editace buttonů aplikace má vlastní kontrakt stavu i appearance
Nativní instanční vlastnosti a transakce
Defaulty velikosti, tvaru, značky i allowNeutral checkButtonu jsou dostupné přes nativní runtime schema; chybějící vlastnosti border i margin checkButtonu lze vytvořit přes stávající property transakci
Efektivní per-instance vlastnosti checkButton, caption, font i margin přežijí SaveToBytes a hned řídí odpovídající automaticky vytvořený PDF widget; první opakovaná instance si uchovává své nezávislé vlastnosti
Literální UTF-8 zdroj události i Unicode binding hodnoty si uchovají své skaláry, dřív než se uložené XDP zkonvertují, tedy i text caption změněný nativní JavaScriptovou událostí; viz HPDFXFAExecuteJavaScriptEvent
Selhání skriptu obnoví přesný nativní XML, dřív než tvorba, a selhání přípravy zachovají pozici, délku i bajty cíle; rozpočty glyfů, objektů i písem i zrušení si uchovávají transakční hranici automatického tvůrce
Akceptační zdroje
Tests/Linux/XFAHeadlessBooleanStylesTests.pas vytvoří skutečné páry značek, caption, neutrální i rezervované stavy, skriptové změny opakovaných instancí i rollback case, bez UI čtečky
Tests/Linux/Verify-XFAHeadlessBooleanStyles.py zkontroluje skutečné uložené stavové slovníky, sdílené font resource, umístění caption, Unicode text i odlišné pixely značek přes pypdf a MuPDF
Boolean callback metadata popisují doplňkové transportní hinty konzumované nativním tvůrcem