PDFium Component Docs

GenerateFormAppearances Methode

Component: TPdf  ·  Unit: PDFium
Genereert de /AP (appearance stream) opnieuw voor elke form widget op elke pagina door elke pagina via FPDF_FFLDraw te renderen. Dit is de aanbevolen aanvullende aanroep bij FormField[i] := value-toewijzingen — zonder deze stap zijn form values mogelijk alleen zichtbaar wanneer het field focus heeft, en elke daaropvolgende flatten-operatie verliest de waarden stilzwijgend. Roep deze aan na alle FormField[]-toewijzingen en vóór SaveAs / FlattenPage / FlattenAllPages

Syntax

procedure GenerateFormAppearances;

Description

GenerateFormAppearances bouwt de appearance streams van bewerkbare tekst- en keuzevakvelden opnieuw op via de native form-fill-editor en synchroniseert de appearance-toestanden van selectievakjes en keuzerondjes

Native tekst- en keuzevak-toewijzingen committen hun appearance via de form-fill-editor; onbewerkte dictionary-wijzigingen en aanvankelijk ontbrekende appearances kunnen deze hergeneratiestap nog steeds vereisen vóór flattening, die opgeslagen appearance streams gebruikt in plaats van de weergave van de live editor

De juiste workflow bij het invullen en vastzetten van een formulier is: alle FormField[]-waarden toewijzen → één keer GenerateFormAppearances aanroepen → optioneel FlattenPage / FlattenAllPages aanroepen → SaveAs aanroepen. Als u het ingevulde formulier alleen wilt bewaren zonder te flattenen, blijft GenerateFormAppearances toch aanbevolen voor maximale compatibiliteit met PDF-viewers van derden

De procedure werkt in één aanroep op het hele document; er is geen per-paginavariant

Example

begin
  // Wijs formulierveldwaarden toe
  Pdf1.FormField[0] := 'Alice Example';
  Pdf1.FormField[1] := '[email protected]';
  Pdf1.FormField[2] := '2026-05-20';
  
  // Bak de appearance streams zodat de waarden in elke viewer zichtbaar zijn
  Pdf1.GenerateFormAppearances;
  
  // Flatten en bewaar een niet-bewerkbare kopie
  Pdf1.FlattenAllPages;
  Pdf1.SaveAs('output_filled_flat.pdf');
end;

Geërfde widgets gebruiken een tijdelijke native edit gevolgd door een geverifieerde herstelling van de oorspronkelijke ouderveldwaarde; er wordt geen schaduwwaarde naar de widget geschreven

Geërfde alleen-lezen velden kunnen deze bewerkingsworkflow niet gebruiken en verhogen een fout; GenerateFormAppearances is geen transactionele documentoperatie

See Also

FlattenPage, FlattenAllPages, FormField, SaveAs