PDFium Delphi Component Docs

FlattenAllPages Método

Componente: TPdf  ·  Unidad: PDFium
Envoltorio de conveniencia que aplana todas las páginas del documento. Devuelve True cuando cada página termina con FLATTEN_SUCCESS o FLATTEN_NOTHINGTODO. Flujo de trabajo recomendado: GenerateFormAppearances → FlattenAllPages → SaveAs

Syntax

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

nFlagInteger. Selecciona el perfil de aplanado aplicado a cada página. Pase FLAT_NORMALDISPLAY (0, predeterminado) para optimizar la visualización en pantalla, o FLAT_PRINT (1) para optimizar la salida impresa

Return Value

True si todas las páginas del documento devolvieron FLATTEN_SUCCESS (1) o FLATTEN_NOTHINGTODO (2); False si alguna página devolvió FLATTEN_FAIL (0)

Description

FlattenAllPages es un envoltorio de conveniencia que itera sobre todas las páginas del documento cargado y llama al equivalente de FlattenPage en cada una. Las anotaciones y los widgets de AcroForm de todas las páginas se fusionan en contenido de página permanente y no editable en una sola llamada

El método devuelve True solo cuando todas las páginas terminan con FLATTEN_SUCCESS o FLATTEN_NOTHINGTODO. Una sola página que devuelva FLATTEN_FAIL hace que el método devuelva False, aunque el aplanado continúa con las páginas restantes

Cuando el documento contiene campos de formulario rellenados, llame siempre a GenerateFormAppearances antes de FlattenAllPages. Sin flujos de apariencia, los valores de los campos no aparecerán en la salida aplanada. El flujo de trabajo completo recomendado es: asignar valores FormField[] → GenerateFormAppearances → FlattenAllPages → SaveAs

Para aplanar una sola página e inspeccionar su código de resultado individual use FlattenPage en su lugar

Example

begin
  // Rellenar campos, generar apariencias y aplanar todo el documento
  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