JAVA將多個PDF合並成一個


最近本人在做項目時,遇到一個問題,需要將多個PDF合成一個,本人將該方法分項給大家,希望對大家有所幫助!!!

  • maven引入pdfbox工具包
        <dependency>
            <groupId>org.apache.pdfbox</groupId>
            <artifactId>pdfbox</artifactId>
            <version>2.0.25</version>
        </dependency>

 

  • PDF合成關鍵代碼
    // pdf合並工具類
    public static File mulFile2One(List<File> files, String targetPath) throws Exception {
        PDFMergerUtility mergePdf = new PDFMergerUtility();
        for (File f : files) {
            if(f.exists() && f.isFile()){
                // 循環添加要合並的pdf
                mergePdf.addSource(f);
            }
        }
        // 設置合並生成pdf文件名稱
        mergePdf.setDestinationFileName(targetPath);
        // 合並pdf
        mergePdf.mergeDocuments(MemoryUsageSetting.setupMainMemoryOnly());
        return new File(targetPath);
    }

    //測試
    public static void main(String[] args) throws IOException {
        List<File> files = new ArrayList();
        File file = new File("C:\\Users\\Administrator\\Desktop\\pdf\\temp");
        File[] tempList = file.listFiles();
        //獲取該文件夾下的文件(文件都是PDF)
        for (int i = 0; i < tempList.length; i++) {
            if (tempList[i].isFile()) {
                files.add(tempList[i]);
            }
        }
        try {
            File f = mulFile2One(files, "C:\\Users\\Administrator\\Desktop\\pdf\\合成PDF.pdf");
            System.out.println(f.length());
        } catch (Exception e){
            e.printStackTrace();
        }
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM