PDFium Delphi Component Docs

FlattenAllPages الطريقة

المكوّن: TPdf  ·  الوحدة: PDFium
مُغلِّف مريح يسطِّح كل صفحة في المستند. يعيد True عندما تكتمل كل صفحة بـ FLATTEN_SUCCESS أو FLATTEN_NOTHINGTODO. مسار العمل الموصى به: GenerateFormAppearances → FlattenAllPages → SaveAs.

الصياغة

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

nFlagInteger. يختار ملف التسطيح المطبق على كل صفحة. مرِّر FLAT_NORMALDISPLAY (0، الافتراضي) للتحسين للعرض على الشاشة، أو FLAT_PRINT (1) للتحسين للإخراج المطبوع.

قيمة الإرجاع

True إذا أعادت كل صفحة في المستند إما FLATTEN_SUCCESS (1) أو FLATTEN_NOTHINGTODO (2)؛ و False إذا أعادت أي صفحة FLATTEN_FAIL (0).

الوصف

FlattenAllPages هو مُغلِّف مريح يكرر عبر كل صفحة في المستند المحمَّل ويستدعي ما يعادل FlattenPage على كل منها. تُدمج التعليقات وأدوات AcroForm عبر جميع الصفحات في محتوى صفحة دائم غير قابل للتحرير في استدعاء واحد.

تعيد الطريقة True فقط عندما تكتمل جميع الصفحات بـ FLATTEN_SUCCESS أو FLATTEN_NOTHINGTODO. تتسبب صفحة واحدة تعيد FLATTEN_FAIL في إعادة الطريقة لـ False، رغم استمرار التسطيح للصفحات المتبقية.

عندما يحتوي المستند على حقول نموذج مملوءة، استدعِ دائمًا GenerateFormAppearances قبل FlattenAllPages. فبدون تيارات المظهر لن تظهر قيم الحقول في الإخراج المسطَّح. مسار العمل الكامل الموصى به هو: تعيين قيم FormField[] → GenerateFormAppearances → FlattenAllPages → SaveAs.

لتسطيح صفحة واحدة وفحص رمز نتيجتها الفردي استخدم 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;

انظر أيضًا

FlattenPage, GenerateFormAppearances, SaveAs