PDFium Delphi Component 文件

TTileKey 记录和 TPdfTileCache 类

单元: PDFium

TTileKey

TTileKey.Create 把 DocumentRevision、PageNumber、Zoom、Rotation、RenderOptions、TileLeft、TileTop、TileWidth 和 TileHeight 组合成稳定的渲染瓦片键

Equals 比较每一个键字段,并容忍亚微级的缩放差异

TPdfTileCache 方法

MethodDescription
Create(Capacity: Integer = 64)创建一个有界缓存,容量至少为一个瓦片
Create(Capacity: Integer; Governor: TPdfCacheGovernor)创建一个还参与共享字节预算竞争的缓存
Destroy清空缓存并释放其拥有的每个位图
Get(const Key: TTileKey): TBitmap在不转移所有权的情况下返回缓存的位图,并更新本地与共享的近期使用状态
Put(const Key: TTileKey; Bitmap: TBitmap)把位图所有权转移给缓存,且仅在条目容量和共享字节预算都允许时才保留它
InvalidatePage(PageNumber: Integer)移除一个页面的所有瓦片
InvalidateRevision(DocumentRevision: Int64)只保留属于所提供文档修订的瓦片
Clear释放所有缓存的位图和调节器令牌

属性

PropertyTypeDescription
CapacityInteger最大瓦片数量
CountInteger当前瓦片数量
StoredBytesInt64当前位图占用,按宽 × 高 × 4 字节计算
CacheGovernorTPdfCacheGovernor可选的共享调节器,赋值时会先清空现有条目

调节器生命周期

缓存从不拥有 CacheGovernor

调节器的寿命必须长于缓存,否则必须在释放调节器之前把该属性设置为 nil

参见

FPdfCache, TPdf 缓存调节器, RenderTile