持久字体子集缓存

持久字体子集缓存避免在后续文档使用相同字体内容和字形集时重复昂贵的 TrueType 或 OpenType 子集化

配置

property FontSubsetCacheFolder: AnsiString;
property FontSubsetCacheMaxBytes: Int64;
function GetFontSubsetCacheInfo: THPDFFontSubsetCacheInfo;
procedure ClearFontSubsetCache;

空 FontSubsetCacheFolder 禁用磁盘缓存而不改变字体输出

FontSubsetCacheMaxBytes 默认为 256 MiB,可以在运行时减小,这会触发立即的最近最少使用逐出

统计

THPDFFontSubsetCacheInfo 包含 HitCount、MissCount、WriteCount、EvictionCount、CorruptCount、RejectedCount、WriteFailureCount、CurrentBytes 和 FileCount

正确性与恢复

示例

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;

另请参阅