function FlattenAllPages(nFlag: Integer = FLAT_NORMALDISPLAY): Boolean;
| nFlag | Integer. 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 |
True jika setiap halaman dalam dokumen mengembalikan FLATTEN_SUCCESS (1) atau FLATTEN_NOTHINGTODO (2); False jika ada halaman yang mengembalikan FLATTEN_FAIL (0)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[] → GenerateFormAppearances → FlattenAllPages → SaveAs
Untuk mem-flatten satu halaman dan memeriksa kode hasil individualnya gunakan FlattenPage sebagai gantinya
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;