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