procedure TPdfLayoutDocument.AddCachedNode(Node: TPdfLayoutCachedNode; Height: Single = 0; Width: Single = 0);
BuildPlan 按页面约束、项目内容、字体、样式、源标识、保留页码位数和 TPdfLayoutMeasurer.CacheIdentity 缓存完整测量计划
匹配的调用无需再次测量文本即返回,并通过 CacheHitCount 报告结果;更改的内容产生 CacheMissCount 并替换快照
调用 InvalidateCache 以释放存储的快照,或在自定义测量器保持同一标识却改变行为时调用
从 TPdfLayoutCachedNode 派生并重写 BuildContent,仅在首次放置时创建节点布局
基础节点也可以通过 Content 直接填充
调用方拥有每个节点,必须使其存活到 GenerateLayout 返回
首次放置渲染一个私有的单页布局,并用 FPDF_NewXObjectFromPage 创建一个绑定目标的 XObject
每次重复放置都从同一 XObject 创建一个轻量 Form 对象,而 ReusedXObjectCount 报告被避免的模板构建
节点内容必须装进尺寸与节点构造函数匹配的单页中
递归节点引用会被拒绝,外部追加事务会回滚该调用创建的所有页面
当被重写的惰性节点的外部输入改变时,调用 Invalidate 重建它