PDFium Component Docs

GenerateFormAppearances Metoda

Component: TPdf  ·  Unit: PDFium
Regeneruje wpis /AP (appearance stream) dla każdego widżetu formularza na każdej stronie przez renderowanie każdej strony przez FPDF_FFLDraw. To zalecane wywołanie towarzyszące przypisaniom FormField[i] := value — bez niego wartości pól mogą być widoczne tylko wtedy, gdy pole ma fokus, a każda późniejsza operacja spłaszczania po cichu utraci wartości. Wywołuj po wszystkich przypisaniach FormField[] i przed SaveAs / FlattenPage / FlattenAllPages

Syntax

procedure GenerateFormAppearances;

Description

GenerateFormAppearances przebudowuje edytowalne appearance tekstu i pól kombi przez natywny edytor form-fill oraz synchronizuje stany appearance pól wyboru i przycisków radiowych

Natywne przypisania tekstu i pól kombi zatwierdzają swój appearance przez edytor form-fill; surowe edycje słownika i początkowo brakujące appearance mogą wciąż wymagać tego kroku regeneracji przed spłaszczeniem, które używa zapisanych strumieni appearance, a nie wyświetlania z żywego edytora

Poprawny przepływ pracy przy wypełnianiu i blokowaniu formularza wygląda tak: przypisz wszystkie wartości FormField[] → wywołaj raz GenerateFormAppearances → opcjonalnie wywołaj FlattenPage / FlattenAllPages → wywołaj SaveAs. Jeśli chcesz tylko zapisać wypełniony formularz bez spłaszczania, GenerateFormAppearances nadal jest zalecane, aby zapewnić maksymalną zgodność z zewnętrznymi przeglądarkami PDF

Procedura działa na całym dokumencie w jednym wywołaniu; nie istnieje wariant dla pojedynczej strony

Example

begin
  // Assign form field values
  Pdf1.FormField[0] := 'Alice Example';
  Pdf1.FormField[1] := '[email protected]';
  Pdf1.FormField[2] := '2026-05-20';
  
  // Bake appearance streams so values are visible in all viewers
  Pdf1.GenerateFormAppearances;
  
  // Flatten and save a non-editable copy
  Pdf1.FlattenAllPages;
  Pdf1.SaveAs('output_filled_flat.pdf');
end;

Odziedziczone widgety używają tymczasowej natywnej edycji, po której następuje zweryfikowane przywrócenie pierwotnej wartości pola nadrzędnego; żadna wartość-cienia nie jest zapisywana w widżecie

Odziedziczone pola tylko do odczytu nie mogą używać tego przepływu edycji i zgłaszają błąd; GenerateFormAppearances nie jest transakcyjną operacją dokumentu

See Also

FlattenPage, FlattenAllPages, FormField, SaveAs