PDFium Delphi Component 文件

Cached layout nodes

组件: TPdf  ·  单元: FPdfLayout

Syntax

procedure TPdfLayoutDocument.AddCachedNode(Node: TPdfLayoutCachedNode; Height: Single = 0; Width: Single = 0);

Measurement cache

BuildPlan 按页面约束、项目内容、字体、样式、源标识、保留页码位数和 TPdfLayoutMeasurer.CacheIdentity 缓存完整测量计划

匹配的调用无需再次测量文本即返回,并通过 CacheHitCount 报告结果;更改的内容产生 CacheMissCount 并替换快照

调用 InvalidateCache 以释放存储的快照,或在自定义测量器保持同一标识却改变行为时调用

Lazy nodes

从 TPdfLayoutCachedNode 派生并重写 BuildContent,仅在首次放置时创建节点布局

基础节点也可以通过 Content 直接填充

调用方拥有每个节点,必须使其存活到 GenerateLayout 返回

Native reuse

首次放置渲染一个私有的单页布局,并用 FPDF_NewXObjectFromPage 创建一个绑定目标的 XObject

每次重复放置都从同一 XObject 创建一个轻量 Form 对象,而 ReusedXObjectCount 报告被避免的模板构建

Safety

节点内容必须装进尺寸与节点构造函数匹配的单页中

递归节点引用会被拒绝,外部追加事务会回滚该调用创建的所有页面

当被重写的惰性节点的外部输入改变时,调用 Invalidate 重建它

See Also

GenerateLayout, CreateXObjectFromPage