function ImportNPagesToOne(
OutputWidth, OutputHeight: Single;
NumX, NumY : Cardinal): TPdf;
ImportNPagesToOne 会把此文档中的页面组合到一个新的输出 PDF 中,每个输出页都以网格方式排布
NumX × NumY 个源页面。源页面会按比例缩放以适配其单元格,同时保留原始纵横比;超出
输出页边界的单元格内容会被裁剪
OutputWidth 和 OutputHeight 使用 PDF
user units(1 unit = 1/72 inch)。对于 A4 横向输出页,请传入 842 × 595。每一行从左到右填充,再按行从上到下排列,和常规打印机的 N-up 版式一致
函数返回一个新的 TPdf 实例。返回对象的所有权归调用方所有,必须将其 Free
掉(或者在赋值给另一个变量之前先将 Active := False)。如果 PDFium 拒绝这些参数
(轴数为零、OOM 等),则返回 nil。源文档(此 TPdf)必须处于
Active 状态
返回文档按 ceil(SourcePages / (NumX×NumY)) 生成每个合成页。如果源页面数不是单元格数量的整数倍,最后一个合成页可能 只填充了一部分
OutputWidth = 842, OutputHeight = 595, NumX = 2, NumY = 1OutputWidth = 595, OutputHeight = 842, NumX = 2, NumY = 2ImportPages 或 ImportPagesByIndex
var
Composite: TPdf;
begin
Pdf1.FileName := 'C:\Slides.pdf';
Pdf1.Active := True;
// 4-up landscape: 842 x 595 pt, 2 columns x 2 rows
Composite := Pdf1.ImportNPagesToOne(842, 595, 2, 2);
try
if Composite <> nil then
Composite.SaveAs('C:\Slides_4up.pdf');
finally
Composite.Free;
end;
end;