TPdfThumbnailCacheStatistics = record
EntryCount: Integer;
StoredBytes: Int64;
HitCount: Int64;
MissCount: Int64;
EvictionCount: Int64;
end;
يشمل EntryCount إدخالات الصور النقطية الموجبة والغياب المخزن للصور المصغرة المضمنة الاختيارية
يقدر StoredBytes ذاكرة الصورة النقطية بالعرض في الارتفاع في أربعة بايتات ويستثني الإدخالات السالبة صفرية البايتات
عدّادات الإصاب والخطأ والإخلاء تراكمية على مدى عمر نسخة TPdf
property ThumbnailCacheMaxEntries: Integer; // default 64
property ThumbnailCacheMaxBytes: Int64; // default 64 MiB
لا يحتفظ الذاكرة بإدخال إلا بينما يسمح السقفان معًا، ويخلُّ الإدخالات الأقل استخدامًا مؤخرًا عندما يتقلص أي من السقفين
ضبط أي سقف على صفر يعطل الاحتفاظ مع إبقاء الاستخراج والعرض متاحين
ترفع القيم السالبة EPdfError
property ThumbnailCacheStatistics: TPdfThumbnailCacheStatistics;
تساهم استدعاءات ExtractThumbnail و RenderPageThumbnail المتكررة بإصابات وأخطاء تحت قفل العرض نفسه الذي تستخدمه عمليات الوصول الأصلي إلى صفحات PDFium
يعيد كل بحث نقطي ناجح نسخة عميقة يملكها المستدعي، فلا يؤثر تحريرها أو تعديلها في إصابة لاحقة
property ThumbnailRevision: Int64;
تتقدم القيمة عندما يستطيع محتوى الصفحة أو بنية المستند جعل معاينة موجودة قديمة
يراقب TPdfThumbnailView هذه المراجعة ويتخلى نسخه الساخنة للصفحات المرئية قبل إعادة رسم المحتوى المحرر
procedure ClearThumbnailCache;
يحرر إدخالات الصور النقطية والسالبة المحتفظ بها دون تغيير الحدود أو العدادات التراكمية أو الصفحة النشطة أو مراجعة محتوى المستند
تُميز الإدخالات المعروضة بمراجعة الصفحة ورقمها والحد الأقصى المطلوب للقياس والدوران وخيارات العرض والخلفية وكل حقل من حقول TPdfColorScheme
تستخدم الصور المصغرة المضمنة مفتاح مصدر منفصلًا وتخزن الصور النقطية المفككة والغيابَ المحفوظ لإدخال /Thumb للصفحة معًا
تُبطل تحريرات الصفحة تلك الصفحة، بينما يفرغ استبدال المستند وتغييرات شجرة الصفحات كل الصور المصغرة المحتفظ بها
var
Bitmap: TBitmap;
Stats: TPdfThumbnailCacheStatistics;
begin
Pdf.ThumbnailCacheMaxEntries := 128;
Pdf.ThumbnailCacheMaxBytes := Int64(96) * 1024 * 1024;
Bitmap := Pdf.RenderPageThumbnail(1, 180, 240);
try
Image1.Picture.Assign(Bitmap);
finally
Bitmap.Free;
end;
Stats := Pdf.ThumbnailCacheStatistics;
LogCache(Stats.EntryCount, Stats.HitCount, Stats.MissCount);
end;