AttachComponent

文档部件、可变数据、文档编辑

描述

用调用者拥有的组件的新克隆替换 TPDFlibDynamicComponentSession 的初始和当前组件快照,并清除所有进度状态

语法

Function TPDFlibDynamicComponentSession.AttachComponent(
  AComponent: TPDFlibDynamicComponent): Integer;

参数

AComponent调用者拥有的组件,其 CloneComponent 提供新的初始快照和新的当前快照

备注

两个克隆都会在任何已存储快照被释放之前创建,因此 CloneComponent 返回 Nil 时,之前的组件、组合计数、完成标志和重试状态保持不变 成功时会话会释放旧快照,存储新的快照对,并将

CompositionCount 重置为零,同时重置 Completed、KeepTogetherRetryPending、LastRetryReason 和 LastRequiredSlotHeight 会话从不取得

AComponent

AttachComponent 的所有权;只存储克隆,因此调用者可以独立持有并释放传入的实例 会话构造函数会调用 Nil,因此用

示例

Replacement := TNumberedPagesComponent.Create(1, 5);
try
  if Session.AttachComponent(Replacement) = 1 then
    Status := Session.ComposeNext(PageNumber, 36, 36, 540, 720,
      Placement);
finally
  Replacement.Free;
end;

返回值

1两个克隆均已创建并提交为新的初始和当前快照,且所有进度状态已清除
0AComponent 为 Nil 或某个 CloneComponent 调用返回了 Nil,此时之前的快照和状态保持不变

另请参阅

TPDFlibDynamicComponentSession、TPDFlibDynamicComponent、CloneComponent、CloneCurrentComponent、ComposeNextLayout