PDFium Component Docs

FlattenAllPages Metoda

Component: TPdf  ·  Unit: PDFium
Wygodna otoczka, która spłaszcza każdą stronę w dokumencie. Zwraca True, gdy każda strona kończy się stanem FLATTEN_SUCCESS lub FLATTEN_NOTHINGTODO. Zalecany przepływ: GenerateFormAppearances → FlattenAllPages → SaveAs

Syntax

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

nFlagInteger. Wybiera profil spłaszczania stosowany do każdej strony. Przekaż FLAT_NORMALDISPLAY (0, wartość domyślna), aby zoptymalizować pod wyświetlanie na ekranie, albo FLAT_PRINT (1), aby zoptymalizować pod wydruk

Return Value

True, gdy każda strona w dokumencie zwróciła FLATTEN_SUCCESS (1) lub FLATTEN_NOTHINGTODO (2); False, gdy dowolna strona zwróciła FLATTEN_FAIL (0)

Description

FlattenAllPages to wygodna otoczka, która iteruje po każdej stronie załadowanego dokumentu i wywołuje na każdej z nich odpowiednik FlattenPage. Adnotacje i widżety AcroForm na wszystkich stronach są scalane z trwałą, nieedytowalną treścią strony w jednym wywołaniu

Metoda zwraca True tylko wtedy, gdy wszystkie strony zakończą się stanem FLATTEN_SUCCESS lub FLATTEN_NOTHINGTODO. Pojedyncza strona zwracająca FLATTEN_FAIL powoduje zwrócenie przez metodę wartości False, choć spłaszczanie pozostałych stron jest kontynuowane

Gdy dokument zawiera wypełnione pola formularza, zawsze wywołuj GenerateFormAppearances przed FlattenAllPages. Bez strumieni wyglądu wartości pól nie pojawią się w spłaszczonym wyniku. Zalecany pełny przepływ to: przypisanie wartości FormField[] → GenerateFormAppearances → FlattenAllPages → SaveAs

Aby spłaszczyć pojedynczą stronę i sprawdzić jej indywidualny kod wyniku, użyj zamiast tego FlattenPage

Example

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;

See Also

FlattenPage, GenerateFormAppearances, SaveAs