从现有的pdf剪辑并创建新的pdf,页码作为输入 - pdfbox

时间:2014-12-29 06:27:37

标签: java pdf pdfbox

我有一个10页的pdf文件,我需要将页面从2到5剪辑并创建一个新的pdf。我正在做的事情如下:

PDDocument pddDocument=PDDocument.load(new File("sample.pdf")); 
PDFTextStripper textStripper=new PDFTextStripper(); 
String text = textStripper.getText(pddDocument).toString();

我只是阅读pdf文件并写入新文件。如何将上限和下限剪辑为页码?请指导我?

1 个答案:

答案 0 :(得分:2)

此解决方案(适用于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。