PDFium Delphi Component Docs

FlattenAllPages Methode

Komponente: TPdf  ·  Unit: PDFium
Komfort-Wrapper, der jede Seite im Dokument abflacht. Gibt True zurück, wenn jede Seite mit FLATTEN_SUCCESS oder FLATTEN_NOTHINGTODO abschließt. Empfohlener Ablauf: GenerateFormAppearances → FlattenAllPages → SaveAs

Syntax

function FlattenAllPages(nFlag: Integer = FLAT_NORMALDISPLAY): Boolean;

nFlagInteger. Wählt das auf jede Seite angewendete Flattening-Profil. Übergeben Sie FLAT_NORMALDISPLAY (0, Standard) zur Optimierung für die Bildschirmanzeige oder FLAT_PRINT (1) zur Optimierung für den Druck

Rückgabewert

True, wenn jede Seite im Dokument entweder FLATTEN_SUCCESS (1) oder FLATTEN_NOTHINGTODO (2) geliefert hat; False, wenn eine Seite FLATTEN_FAIL (0) geliefert hat

Beschreibung

FlattenAllPages ist ein Komfort-Wrapper, der über jede Seite des geladenen Dokuments iteriert und auf jeder das Äquivalent von FlattenPage aufruft. Anmerkungen und AcroForm-Widgets aller Seiten werden in einem einzigen Aufruf zu permanentem, nicht editierbarem Seiteninhalt verschmolzen

Die Methode gibt True nur zurück, wenn alle Seiten mit FLATTEN_SUCCESS oder FLATTEN_NOTHINGTODO abschließen. Eine einzelne Seite mit FLATTEN_FAIL lässt die Methode False zurückgeben, wobei das Flattening für die verbleibenden Seiten fortgesetzt wird

Wenn das Dokument ausgefüllte Formularfelder enthält, rufen Sie stets GenerateFormAppearances vor FlattenAllPages auf. Ohne Appearance-Streams erscheinen die Feldwerte nicht in der abgeflachten Ausgabe. Der empfohlene vollständige Ablauf ist: FormField[]-Werte zuweisen → GenerateFormAppearances → FlattenAllPages → SaveAs

Um eine einzelne Seite abzuflachen und ihren individuellen Ergebniscode zu prüfen, verwenden Sie stattdessen FlattenPage

Beispiel

begin
  // Fill fields, generate appearances, flatten entire document
  Pdf1.FormField[0] := 'Jane Doe';
  Pdf1.FormField[1] := '2026-05-20';
  Pdf1.GenerateFormAppearances;
  if Pdf1.FlattenAllPages(FLAT_NORMALDISPLAY) then
    Pdf1.SaveAs('output_flat_all.pdf')
  else
    ShowMessage('One or more pages could not be flattened');
end;

Siehe auch

FlattenPage, GenerateFormAppearances, SaveAs