property AnnotationCount: Integer; // read only
تُرجع الخاصية AnnotationCount طول مصفوفة /Annots
للصفحة الحالية (القسم 12.5 من مواصفة PDF 1.7). وتُحتسب جميع الأنواع الفرعية للتعليقات — الملاحظات النصية والتظليل والتسطير والنص الحر والحبر والأختام وأشكال المضلعات والمضلعات المفتوحة وتعليقات الروابط ونوافذ المنبثقة وتعليقات أدوات النماذج. اجمع القيم من كل الصفحات للحصول على الإجمالي الكلي للتعليقات في المستند.
تتطلب هذه الخاصية أن تكون Active تساوي True وتقرأ من الصفحة المشار إليها في PageNumber. وعندما لا تحتوي الصفحة على تعليقات أو لم يُحمَّل المستند تكون القيمة 0. استخدم Annotation[Index]
بفهارس من 0 إلى AnnotationCount - 1 لجلب سجل
TPdfAnnotation يصف النوع الفرعي والمستطيل المحيط واللون وقناع أعلام البتات ونص المحتويات لكل مدخل.
استعراض التعليقات بمعدل O(n)، لكن كل استدعاء لـ Annotation[Index] يفتح مقبض PDFium جديدًا ويفك ترميز محتويات Unicode عند الطلب؛ خزّن النتيجة مؤقتًا إذا احتجتها أكثر من مرة. ويؤدي تغيير تعليقات صفحة (إدراجًا أو حذفًا) إلى إبطال الفهارس — فأعد تشغيل الحلقة أو أعد قراءة AnnotationCount
بعد التغيير.
FormFieldCount إذا كنت تريد أدوات الحقول فقط.LinkAnnotationCount[PageNumber],
التي تصفّي النتائج إلى النوع الفرعي /Link عبر أي صفحة مباشرة.
var I: Integer;
var A: TPdfAnnotation;
for I := 0 to Pdf1.AnnotationCount - 1 do
begin
A := Pdf1.Annotation[I];
Memo1.Lines.Add(Format('%d: subtype=%d text=%s',
[I, Ord(A.Subtype), A.ContentsText]));
end;