מטמון תת-קבוצות גופנים מתמשך
מטמון תת-קבוצות הגופנים המתמשך מונע חזרה על חיתוך TrueType או OpenType יקר כאשר מסמכים מאוחרים משתמשים באותו תוכן גופן ובאותה קבוצת גליפים
תצורה
property FontSubsetCacheFolder: AnsiString;
property FontSubsetCacheMaxBytes: Int64;
function GetFontSubsetCacheInfo: THPDFFontSubsetCacheInfo;
procedure ClearFontSubsetCache;
FontSubsetCacheFolder ריק משבית את שמירת הדיסק מבלי לשנות את פלט הגופנים
FontSubsetCacheMaxBytes מתחיל ברירת מחדל של 256 MiB וניתן להקטינו בזמן ריצה, מה שמפעיל פינוי מיידי של least-recently-used
סטטיסטיקות
THPDFFontSubsetCacheInfo מכיל את HitCount, MissCount, WriteCount, EvictionCount, CorruptCount, RejectedCount, WriteFailureCount, CurrentBytes ו-FileCount
נכונות ושחזור
- פגיעת מטמון אפשרית רק כאשר תוכן הגופן, הגליפים בשימוש, מצב תת-הקבוצה וסכמת המטמון תואמים כולם
- ערכי תת-קבוצה קומפקטיים שומרים על נתוני מיפוי ה-CID הנדרשים על ידי מילוני גופני PDF/A
- ערכים פגומים או קטועים נדחים ומוסרים לפני שתת-הקבוצה יכולה להגיע לזרם PDF
- כשלי מטמון נופלים חזרה לחיתוך רגיל בזיכרון ולעולם אינם מונעים יצירת מסמך
- החלפה אטומית מונעת מקוראים לראות ערך שנכתב חלקית
דוגמה
var
Info: THPDFFontSubsetCacheInfo;
begin
PDF.EnableFontSubsetting := True;
PDF.FontSubsetCacheFolder := 'C:\ProgramData\MyApp\HotPDF\FontSubsets';
PDF.FontSubsetCacheMaxBytes := 256 * 1024 * 1024;
{ create documents that use embedded TrueType or OpenType fonts }
Info := PDF.GetFontSubsetCacheInfo;
end;