我有一个包含10页的pdf文件,我需要将页面从2剪切到5,然后创建一个新的pdf。我正在做的事情如下所示:
PDDocument pddDocument=PDDocument.load(new File("sample.pdf"));
PDFTextStripper textStripper=new PDFTextStripper();
String text = textStripper.getText(pddDocument).toString();
我只是在阅读pdf文件并将其写入新文件。如何将上下限剪辑为页码?请指导我?
最佳答案
该解决方案(适用于PDFBox 1.8。*)创建一个PDF文件,其内容与您要求的一样。请注意,页面是从零开始的。
File originalPdf = new File("{File Location}");
PDDocument srcDoc = PDDocument.load(originalPdf);
PDDocument dstDoc = new PDDocument();
List<PDPage> srcPages = srcDoc.getDocumentCatalog().getAllPages();
for (int p = 0; p < srcPages.size(); ++p)
{
if (p >= 1 && p <= 4)
dstDoc.addPage(srcPages.get(p));
}
dstDoc.save(file2);
dstDoc.close();
srcDoc.close();
如果要改为从命令行工作,请看这里:
https://pdfbox.apache.org/commandline/
然后使用PDFSplit和PDFMerge。