function FlattenAllPages(nFlag: Integer = FLAT_NORMALDISPLAY): Boolean;
| nFlag | Integer. 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 |
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)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
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;