CloneComponent

文件組件、可變資料、文件編輯

描述

TPDFlibDynamicComponent 的抽象方法,傳回元件的呼叫端獨立複本,包括所有可變分頁狀態

語法

Function TPDFlibDynamicComponent.CloneComponent:
  TPDFlibDynamicComponent; Virtual; Abstract;

備註

覆寫必須複製 Compose 會修改的每個欄位,因為工作階段會在工作複本上進行組合,並且只在該複本的 Form XObject 通過驗證且放置完成後才認可該複本 工作階段在多處依賴複本:

AttachComponent 為初始與目前快照複製兩次,ComposeNextLayout 為工作元件每次嘗試複製一次,而 CloneCurrentComponent 則複製已認可的快照以供檢查

CloneComponent 的呼叫端擁有傳回的執行個體,並獨立於來源元件釋放它

Nil 結果會被工作階段視為複製失敗,隨後拒絕原始作業,而不變更已儲存的狀態

範例

function TNumberedPagesComponent.CloneComponent:
  TPDFlibDynamicComponent;
begin
  Result := TNumberedPagesComponent.Create(FNextPage, FPageCount);
end;

傳回值

新執行個體獨立複本,其後續的 Compose 呼叫不會影響來源元件
Nil覆寫無法產生複本;工作階段會拒絕 AttachComponent 與依賴該複本的組合嘗試

另請參閱

TPDFlibDynamicComponent, TPDFlibDynamicComponentSession, Compose, CloneCurrentComponent, AttachComponent