PDFium Component Docs

FlattenAllPages method

Component: TPdf  ·  Unit: PDFium
Pembungkus praktis yang mem-flatten setiap halaman dalam dokumen. Mengembalikan True ketika setiap halaman selesai dengan FLATTEN_SUCCESS atau FLATTEN_NOTHINGTODO. Alur kerja yang direkomendasikan: GenerateFormAppearances → FlattenAllPages → SaveAs

Syntax

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

nFlagInteger. Memilih profil flattening yang diterapkan ke setiap halaman. Lewatkan FLAT_NORMALDISPLAY (0, default) untuk mengoptimalkan tampilan layar, atau FLAT_PRINT (1) untuk mengoptimalkan output cetak

Return Value

True jika setiap halaman dalam dokumen mengembalikan FLATTEN_SUCCESS (1) atau FLATTEN_NOTHINGTODO (2); False jika ada halaman yang mengembalikan FLATTEN_FAIL (0)

Description

FlattenAllPages adalah pembungkus praktis yang beriterasi atas setiap halaman dalam dokumen yang dimuat dan memanggil setara dengan FlattenPage pada masing-masing. Anotasi dan widget AcroForm di seluruh halaman digabung menjadi konten halaman permanen yang tidak dapat diedit dalam satu panggilan

Metode ini mengembalikan True hanya ketika semua halaman selesai dengan FLATTEN_SUCCESS atau FLATTEN_NOTHINGTODO. Satu halaman yang mengembalikan FLATTEN_FAIL menyebabkan metode mengembalikan False, meskipun flattening berlanjut untuk halaman yang tersisa

Ketika dokumen berisi field formulir yang telah diisi, selalu panggil GenerateFormAppearances sebelum FlattenAllPages. Tanpa appearance stream nilai field tidak akan muncul dalam output yang diflatten. Alur kerja penuh yang direkomendasikan adalah: tetapkan nilai FormField[]GenerateFormAppearancesFlattenAllPagesSaveAs

Untuk mem-flatten satu halaman dan memeriksa kode hasil individualnya gunakan FlattenPage sebagai gantinya

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