a876459952

最近本人在做项目时,遇到一个问题,需要将多个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();
        }
    }

 

分类:

技术点:

相关文章:

  • 2021-06-18
  • 2021-11-22
  • 2021-08-08
  • 2021-12-03
  • 2021-12-07
  • 2021-05-11
  • 2021-09-16
  • 2022-01-23
猜你喜欢
  • 2021-04-02
  • 2021-12-15
  • 2021-06-11
  • 2021-07-21
  • 2021-05-26
  • 2022-01-23
  • 2021-05-03
相关资源
相似解决方案