وثائق PDFiumPas

ObjectBounds الخاصية

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

الصياغة

property ObjectBounds[Index: Integer]: TPdfRectangle; // read only

الوصف

تيار محتوى PDF للصفحة هو تسلسل من كائنات الصفحة: مقاطع نصية، ومسارات متجهة، وصور نقطية، وأنماط تظليل، وXObjects للنماذج مضمنة (PDF 32000-1 § 8.2). يعيد ObjectBounds المستطيل المحيط للكائن رقم Index على الصفحة الحالية بعد أن يكون PDFium قد سوّى مكدس CTM ومصفوفة cm الخاصة بالكائن، لذا يمكن استخدام المستطيل مباشرة لاختبار النقرات أو بناء الأقنعة أو قص الصور المصغرة من دون أي حساب إضافي

يستخدم المستطيل اصطلاح الإحداثيات القياسي في PDF — الأصل عند الزاوية السفلية اليسرى من الصفحة، والوحدات 1/72 بوصة، وY يتجه إلى الأعلى — لذا يكون Bottom < Top في المستند السليم. يلف FPDFPageObj_GetBounds في PDFium؛ والاستدعاء O(1) بحد ذاته لكنه يمر على كل رأس محيط داخليًا للمسارات، لذلك من الحكمة تخزين النتيجة مؤقتًا إذا قرأتها مرات كثيرة لكل كائن

النطاق الصالح هو 0 .. ObjectCount - 1 للصفحة المحددة حاليًا بواسطة PageNumber. يعيد الوصول إلى فهرس خارج النطاق مستطيلًا صفريًا. قرن هذه الخاصية مع ObjectType للتفرع حسب نوع الكائن قبل قراءة الخصائص الإضافية الخاصة بالنوع

المعلمات

Indexفهرس كائن الصفحة ذو الفهرسة الصفرية، 0 ≤ Index < ObjectCount

ملاحظات

مثال

// Highlight every image object on the current page.
var I: Integer;
var R: TPdfRectangle;
begin
  for I := 0 to Pdf1.ObjectCount - 1 do
  if Pdf1.ObjectType[I] = otImage then
  begin
    R := Pdf1.ObjectBounds[I];
    Memo1.Lines.Add(Format('image %d: %.1f,%.1f - %.1f,%.1f (%.1fx%.1f pt)',
      [I, R.Left, R.Bottom, R.Right, R.Top,
       R.Right - R.Left, R.Top - R.Bottom]));
  end;
end;

انظر أيضا

ObjectCount, ObjectType, ObjectHandle, ObjectTransparent, PageNumber