ComposeNext

頁面版面配置、分頁、Form XObjects

描述

使用預設版面原則將一個有狀態的動態片段組合至目的地頁面插槽,並回報最終放置

語法

Function TPDFlibDynamicComponentSession.ComposeNext(Page: Integer;
  Left, Top, Width, Height: Double;
  Out Placement: TPDFlibDynamicPagePlacement): Integer;

參數

Page現有的目的地頁碼(以 1 為基準)
Left, Top目前文件單位中的左上目的地位置
Width, Height有限正數的目的地插槽大小,同時成為自然畫布大小
Placement描述已認可片段的輸出放置記錄

備註

此呼叫透過 CreateLayoutOptions(Width, Height) 建構選項並轉送 ComposeNextLayout,因此繼承 dopReject 溢出處理、dhaLeft 與 dvaTop 對齊、dppAllowSplit 分頁,且不設 flow-space 最小值

使用矩形必須放得進槽位,因為預設溢出策略是拒絕,而不是裁切或縮放

完整的放置、重試與變換行為請見 ComposeNextLayout

範例

repeat
  Status := Session.ComposeNext(PageNumber, 36, 36, 540, 720,
    Placement);
  if Status = PDF_DYNAMIC_COMPONENT_MORE then
    PageNumber := PDF.NewPage;
until Status <> PDF_DYNAMIC_COMPONENT_MORE;

傳回值

PDF_DYNAMIC_COMPONENT_ERROR輸入、回呼、幾何、溢位或放置驗證失敗,且未認可任何狀態
PDF_DYNAMIC_COMPONENT_MORE片段已認可,且還有更多內容
PDF_DYNAMIC_COMPONENT_COMPLETE片段已完成工作階段,或工作階段原本就已完成
PDF_DYNAMIC_COMPONENT_RETRY分頁或流程空間原則將未認可的嘗試延後到其他插槽

另請參閱

ComposeNextLayout, CreateLayoutOptions, TPDFlibDynamicComponentSession, Compose, Completed, CompositionCount