Native XFA Scalar Value Properties

Host zdarzeń tworzy rzeczywiste natywne kontenery wartości formularza i liście skalarne przez dostęp do właściwości albo getElement; właściwości wartości pól, związane wartości danych i odczyty widgetów dzielą tę samą bieżącą wartość

Scalar creation

Obsługiwane skalarne potomki to boolean, date, dateTime, decimal, float, integer, text i time, z jednym wystąpieniem jednej wybranej klasy wartości

const field = xfa.form.resolveNode("main.row[1].input");
const leaf = field.value.getElement("text", 0);
leaf.value = "updated";
field.dataNode.value = "from-data";
if (leaf.value !== "from-data") throw new Error("Value synchronization failed");

Czytanie brakującej skalarnej właściwości materializuje jej natywny węzeł formularza i inicjalizuje zawartość z bieżącej efektywnej wartości pola; powtórny dostęp zwraca ten sam żywy obiekt właściwości

Value ma wspólne atrybuty prototypu, override=0 i pusty atrybut relevant domyślnie; obsługiwane skalarne klasy odsłaniają wspólne atrybuty prototypu i pustą nazwę

Sprawdzenie one-of obejmuje wszystkie standardowe wybory wartości, więc skalarnego nie można utworzyć obok istniejącego wyboru wartości image, exData albo graphic

Immediate and native synchronization

Aksesory value i rawValue liścia skalarnego proxy'ują posiadające pole; związany dataValue.value jest zapisywalnym aliasem swojego akcesora rawValue

Zapisy pól, skalarnych i danych aktualizują nawzajem swoje odczyty w tym samym skrypcie, łącznie z innymi polami dzielącymi tę samą związaną wartość danych

Natywna publikacja aktualizuje wartość dataset i istniejące zmaterializowane skalarne liście formularza; interaktywne commity widgetów i wyniki obliczeń też synchronizują zmaterializowane właściwości value dla związanych pól, łącznie z aliasami hidden i invisible

Typowana skalarna zawartość jest zachowywana jako dostarczony tekst, łącznie z kanonicznymi ciągami daty, czasu i liczb; ten etap nie wprowadza automatycznej koercji numerycznej ani nowego formatowania picture

Synchronizacja ukrytych aliasów podąża za rzeczywistymi powtarzalnymi zakresami danych i zachowuje niezmaterializowane właściwości

Instances, identity and transactions

Tworzenie i edycja właściwości value w jednym powtarzalnym wystąpieniu zachowuje inne wystąpienia; obiekty skryptowe mogą zachować referencję skalarnej właściwości na późniejsze zdarzenie

Nowe powtarzalne wystąpienia dostają niezależnych natywnych węzłów value; zapisy danych do nowo utworzonego wystąpienia aktualizują jego rzeczywisty zmaterializowany skalarne liść przed zapisaniem transakcji

Błędy silnika, natywne awarie budżetu wartości i sprzeczne wybory wartości przywracają dokładne natywne bajty XDP, łącznie z danymi pól, zmaterializowanymi liśćmi wartości i współdzielonymi aliasami

Natywne skany synchronizacji uczestniczą w budżetach operacji i upływu czasu zdarzenia; nadmierna praca odrzuca transakcję i przywraca jej snapshot

Saved PDF output

Konwersja XFA AcroForm konsumuje utrwalone skalarne wartości dla natywnych wartości pól i generowanych wyglądów; wartości powtarzalnych pierwszych wystąpień pozostają niezmienione

Fiksowany producer zapisu ponownie otwiera natywne XDP przed konwersją, a niezależne sprawdzenia pypdf i MuPDF przeglądają typowane liście formularzy, wartości dataset, natywne pola i rzeczywisty widoczny tekst wyglądów

Remaining integration targets

Natywny XML exData wspiera tworzenie brakujących wartości, rzeczywisty import XML obcego, natychmiastową serializację skryptową i utrwaloną konsumpcję drawów rich

Skalarne konsumenci draw i podpisów wspierają utworzone per-instance wartości i jawne puste nadpisania

Tworzenie wartości obrazów i grafiki wspiera natywnych potomków obrazów, łuków, linii i prostokątów z rzeczywistymi konsumentami draw

Kompletna walidacja formatu skalarnego, wyglądy rich widgetów i osadzanie Unicode wyglądów pozostają odrębnymi celami implementacji

Related APIs

Native Data DOM, Native Field Defaults, Absent Property Creation i Interactive XFA Runtime