function BuildPdfImpositionPlan(PageCount: Integer;
const Options: TPdfImpositionOptions): TPdfImpositionPlan;
| PageCount | Integer |
| Options | TPdfImpositionOptions |
TPdfImpositionPlanBuildPdfImpositionPlan 在不打开文档的情况下计算每个源页面在输出纸张上的落位,因此可以在 TPdf.ImportImposed 执行之前预览布局
在 pimNUp 模式下,每个输出页面容纳 Columns 乘 Rows 的槽位网格,列数或行数取 1 到 32,每面最多 256 个槽位;Duplex 会使每张纸张的页面数翻倍,页数会补齐到完整的页面
在 pimBooklet 模式下,该计划是一个 2-up 骑马订方案:页数补齐到 4 的倍数,每张纸张的正面配对最后一个与第一个逻辑页,背面承载靠内的一对页面
ReverseSheets 反转逻辑纸张顺序,CreepPerSheet 按爬移量乘以逻辑纸张索引将外侧槽位列向内或向外平移,以此重现骑马订拼版的内缩效果
Plan.Slots 中的每个槽位记录 SheetIndex、SideIndex、SlotIndex、SourcePageIndex、Creep,以及在输出页面内的 Left、Bottom、Width 和 Height 位置;SourcePageIndex 为 -1 表示空白填充槽位
Plan 还报告 SourcePageCount、PaddedPageCount、SheetCount、SideCount、SlotsPerSide 以及解析后的网格几何信息
EPdfErrorOptions := TPdfImpositionOptions.Default;
Options.Mode := pimBooklet;
Plan := BuildPdfImpositionPlan(Pdf.PageCount, Options);