Persistent Font-Subset Cache
Cache subset font bền vững tránh lặp lại việc subset TrueType hoặc OpenType tốn kém khi các tài liệu sau dùng cùng nội dung font và tập glyph
Configuration
property FontSubsetCacheFolder: AnsiString;
property FontSubsetCacheMaxBytes: Int64;
function GetFontSubsetCacheInfo: THPDFFontSubsetCacheInfo;
procedure ClearFontSubsetCache;
Một FontSubsetCacheFolder rỗng vô hiệu hóa cache đĩa mà không thay đổi đầu ra font
FontSubsetCacheMaxBytes mặc định là 256 MiB và có thể được giảm tại runtime, điều này kích hoạt loại bỏ ít-dùng-gần-nhất ngay lập tức
Thống kê
THPDFFontSubsetCacheInfo chứa HitCount, MissCount, WriteCount, EvictionCount, CorruptCount, RejectedCount, WriteFailureCount, CurrentBytes, và FileCount
Correctness and recovery
- Một lần trúng cache chỉ có thể xảy ra khi nội dung font, glyph được dùng, chế độ subset, và schema cache đều khớp
- Các mục subset nhỏ gọn giữ dữ liệu ánh xạ lại CID mà từ điển font PDF/A yêu cầu
- Các mục sai định dạng hoặc bị cắt ngắn bị từ chối và loại bỏ trước khi subset có thể đến một stream PDF
- Lỗi cache quay lại subset trong bộ nhớ bình thường và không bao giờ ngăn việc tạo tài liệu
- Thay thế nguyên tử ngăn reader quan sát một mục được ghi một phần
Ví dụ
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;