function ImportNPagesToOne(
OutputWidth, OutputHeight: Single;
NumX, NumY : Cardinal): TPdf;
ImportNPagesToOne 将本文档的页面组合到一个新的
输出 PDF 中,其中每个输出页面以网格方式布局
NumX × NumY 个源页面。
源页面会缩放以适应其单元格,同时保留
原始宽高比;超出输出页面边界的单元格会被裁剪
OutputWidth 和 OutputHeight 以 PDF
用户单位(1 单位 = 1/72 英寸)计。对于 A4 横向输出页面,
传入 842 × 595。每一行从左到右填充,然后逐行
从上到下,镜像常规打印机的 N-up 版式
该函数返回一个新的 TPdf 实例。
调用方拥有返回的对象,并且必须 Free
它(或在赋值给另一个变量之前设置 Active := False)。如果 PDFium 拒绝了参数
(零轴计数、OOM 等),则返回 nil。源文档(此 TPdf)必须
为 Active
返回的文档为每个 ceil(源页数 / (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 横向:842 x 595 pt,2 列 x 2 行
Composite := Pdf1.ImportNPagesToOne(842, 595, 2, 2);
try
if Composite <> nil then
Composite.SaveAs('C:\Slides_4up.pdf');
finally
Composite.Free;
end;
end;