PDFium Delphi Component Docs

FlattenAllPages Méthode

Composant: TPdf  ·  Unit: PDFium
Wrapper de commodité qui aplatit chaque page du document. Renvoie True lorsque chaque page se termine avec FLATTEN_SUCCESS ou FLATTEN_NOTHINGTODO. Flux de travail recommandé : GenerateFormAppearances → FlattenAllPages → SaveAs

Syntax

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

nFlagInteger. 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

Return Value

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)

Description

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

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