وثائق PDFiumPas

ImportPagesByIndex الطريقة

يحافظ إدخال API هذا على المعرّفات والتواقيع وكتل الكود ومصطلحات PDF بصيغتها الأصلية.
المكون: TPdf  ·  الوحدة: PDFium
يستورد مجموعة فرعية محددة من الصفحات من TPdf آخر بواسطة فهرس يبدأ من الصفر، مع التحكم في موضع الإدراج في المستند الحالي

الصياغة

function ImportPagesByIndex(
  Source : TPdf;
  const PageIndices: array of Integer;
  InsertAt : Integer = 0): Boolean;

الوصف

ينسخ ImportPagesByIndex مجموعة صريحة من الصفحات من Source إلى هذا المستند. بخلاف ImportPages الذي يحلل سلسلة نطاق تبدأ من 1 ("1-3,7,10-12")، يأخذ ImportPagesByIndex الفهارس مباشرة كمصفوفة Pascal مفتوحة تبدأ من الصفر — وهو مثالي عندما تأتي قائمة الصفحات من منطق البرنامج (قائمة مصغرات محددة أو استعلام مُصفّى وما إلى ذلك)

InsertAt هو فهرس الوجهة الذي يبدأ من الصفر لأول صفحة مستوردة: مرّر 0 للإدراج قبل الصفحة 1 الحالية، ومرّر PageCount للإلحاق. تُقصّ قيم InsertAt الخارجة عن النطاق بواسطة PDFium

مرّر مصفوفة PageIndices فارغة لاستيراد كل صفحة من Source (وهو مكافئ لتمرير nil على مستوى C ABI). هذا هو الاختصار الذي يستورد كل شيء باستدعاء واحد

يعيد True عند النجاح. ويعيد False إذا كان أي فهرس خارج النطاق في Source أو إذا لم يكن أي من المستندين Active. ويرفع EPdfError عندما يكون Source يساوي nil

ملاحظات

مثال

var
  Source: TPdf;
begin
  Source := TPdf.Create(nil);
  try
    Source.FileName := 'C:\Report.pdf';
    Source.Active := True;
    // Import pages 1, 3, 5 (zero-based: 0, 2, 4) and append
    Pdf1.ImportPagesByIndex(Source, [0, 2, 4], Pdf1.PageCount);
    // Or import every source page at the start of Pdf1
    // Pdf1.ImportPagesByIndex(Source, [], 0);
  finally
    Source.Free;
  end;
end;

انظر أيضا

ImportPages, ImportNPagesToOne, MovePages