Java版PDF拼接

首先确保pom.xml文件中是否存在对应配置信息

复制代码
<dependency>
    <groupId>org.apache.pdfbox</groupId>
    <artifactId>pdfbox</artifactId>
    <version>2.0.27</version>
</dependency>

代码部分直接复制下方代码

java 复制代码
import org.apache.pdfbox.multipdf.PDFMergerUtility;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class PDFMerger {

    public static void main(String[] args) {
        List<String> pdfFiles = new ArrayList<>();
        // 文件1信息
        pdfFiles.add("/Users/george/Downloads/1.pdf");
        // 文件2信息
        pdfFiles.add("/Users/george/Downloads/2.pdf");
        // 拼接后的文件信息
        String outputFile = "/Users/george/Downloads/拼接版PDF.pdf";

        try {
            // 处理PDF文件
            mergePDFs(pdfFiles, outputFile);
            System.out.println("PDF files merged successfully!");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public static void mergePDFs(List<String> pdfFiles, String outputFile) throws IOException {
        PDFMergerUtility pdfMerger = new PDFMergerUtility();
        for (String pdfFile : pdfFiles) {
            pdfMerger.addSource(new File(pdfFile));
        }
        pdfMerger.setDestinationFileName(outputFile);
        pdfMerger.mergeDocuments(null);
    }
}
相关推荐
iAm_Ike3 小时前
Go 中自定义类型与基础类型间的显式类型转换详解
jvm·数据库·python
iuvtsrt4 小时前
Golang怎么实现方法集与接口的匹配_Golang如何理解值类型和指针类型实现接口的区别【详解】
jvm·数据库·python
Javatutouhouduan4 小时前
2026Java面试的正确打开方式!
java·高并发·java面试·java面试题·后端开发·java编程·java八股文
JAVA面经实录9174 小时前
Java初级最终完整版学习路线图
java·spring·eclipse·maven
旦莫4 小时前
AI驱动的纯视觉自动化测试:知识库里应该积累什么知识内容
人工智能·python·测试开发·pytest·ai测试
Cat_Rocky5 小时前
k8s-持久化存储,粗浅学习
java·学习·kubernetes
知识领航员5 小时前
蘑兔AI音乐深度实测:功能拆解、实测表现与适用场景
java·c语言·c++·人工智能·python·算法·github
释怀°Believe6 小时前
Spring解析
java·后端·spring
ooseabiscuit6 小时前
Laravel4.x:现代PHP框架的奠基之作
java·开发语言·php
如何原谅奋力过但无声7 小时前
【灵神高频面试题合集06-08】反转链表、快慢指针(环形链表/重排链表)、前后指针(删除链表/链表去重)
数据结构·python·算法·leetcode·链表