function FlattenAllPages(nFlag: Integer = FLAT_NORMALDISPLAY): Boolean;
| nFlag | Integer. Sélectionne le profil d’aplatissement appliqué à chaque page. Passez FLAT_NORMALDISPLAY (0, par défaut) pour optimiser l’affichage à l’écran, ou FLAT_PRINT (1) pour optimiser la sortie imprimée |
True si chaque page du document a renvoyé soit FLATTEN_SUCCESS (1) soit FLATTEN_NOTHINGTODO (2) ; False si une page a renvoyé FLATTEN_FAIL (0)FlattenAllPages est un wrapper de commodité qui itère sur chaque page du document chargé et appelle l’équivalent de FlattenPage sur chacune. Les annotations et widgets AcroForm de toutes les pages sont fusionnés en contenu de page permanent et non éditable en un seul appel
La méthode renvoie True uniquement lorsque toutes les pages se terminent avec FLATTEN_SUCCESS ou FLATTEN_NOTHINGTODO. Une seule page renvoyant FLATTEN_FAIL fait renvoyer False à la méthode, bien que l’aplatissement continue pour les pages restantes
Lorsque le document contient des champs de formulaire remplis, appelez toujours GenerateFormAppearances avant FlattenAllPages. Sans flux d’apparence, les valeurs de champ n’apparaîtront pas dans la sortie aplatie. Le flux de travail complet recommandé est : assigner les valeurs FormField[] → GenerateFormAppearances → FlattenAllPages → SaveAs
Pour aplatir une seule page et inspecter son code de résultat individuel, utilisez plutôt FlattenPage
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;