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);
    }
}
相关推荐
就叫_这个吧3 小时前
Java递归方法实现面包屑导航
java·开发语言
fīɡЙtīиɡ ℡3 小时前
AI 应用系统设计
java·开发语言·人工智能
城管不管3 小时前
重生——第十一次面试之挖财一面2026.8.19已OC
java·服务器·jvm·数据库·spring·面试·职场和发展
码匠许师傅3 小时前
【C++ 面试真题】26. 聊聊 C++ 的智能指针
java·c++·面试
AI绘画哇哒哒3 小时前
【建议收藏!】35岁后端血泪忠告,这3类人别硬转Agent(过来人亲述)
java·人工智能·后端·ai·程序员·大模型·agent
聪明蛋子哟4 小时前
Stagehand v3多语言SDK:Python/Go/Rust/Java下的浏览器自动化统一方案
python·golang·rust
最强小杰4 小时前
gpt-5.6-sol 频繁报 503 怎么办?区分容量熔断和限速 429 的排查方法 + 可复用 retry wrapper
java·人工智能·gpt·ai
今天AI了吗4 小时前
Python 基础语法(一):常量、变量、输入输出与运算符
开发语言·数据库·人工智能·python·sql·深度学习·机器学习
卷无止境5 小时前
Windows 上丝滑开发 Python,并稳定构建 Docker 镜像
后端·python·docker
TELL5215 小时前
selenium webdriver 第二次初始化的异常
开发语言·python