如何在 Java 中进行 PDF 文件操作
合并 PDF 文件
使用 PdfFileEditor.concatenate() 将多个 PDF 文件合并为一个输出文件。传入输入路径数组和目标输出路径:
PdfFileEditor editor = new PdfFileEditor();
String[] inputs = {"part1.pdf", "part2.pdf", "part3.pdf"};
editor.concatenate(inputs, "merged.pdf");提取页面范围
提取一个连续的页面范围,使用起始页码和结束页码(从 1 开始计数)。提取的页面将写入新文件:
PdfFileEditor editor = new PdfFileEditor();
// Extract pages 2 through 5 (1-indexed)
editor.extract("source.pdf", 2, 5, "extracted.pdf");拆分为单独页面
将文档拆分,使每页成为单独的文件。调用此方法前,输出目录必须已存在:
PdfFileEditor editor = new PdfFileEditor();
editor.splitToPages("document.pdf", "output_dir/");调整页面内容大小
使用 ContentsResizeParameters 在现有页面边界内缩放内容。指定左边距、内容宽度、右边距、上边距、内容高度和下边距的百分比——它们在每个维度上必须加总为 100:
try (Document doc = new Document("input.pdf")) {
PdfFileEditor editor = new PdfFileEditor();
ContentsResizeParameters params = new ContentsResizeParameters(
ContentsResizeValue.percents(10), // left margin
ContentsResizeValue.percents(80), // content width
ContentsResizeValue.percents(10), // right margin
ContentsResizeValue.percents(10), // top margin
ContentsResizeValue.percents(80), // content height
ContentsResizeValue.percents(10) // bottom margin
);
editor.resizeContents(doc, params);
doc.save("resized.pdf");
}制作小册子
按小册子打印顺序排列页面,使文档在折叠后能够正确打印。此操作会重新排序并成对配对页面,以适应双面打印:
PdfFileEditor editor = new PdfFileEditor();
editor.makeBooklet("input.pdf", "booklet.pdf");