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);
    }
}
相关推荐
LSL666_2 分钟前
12 MyBatis的连接池
java·服务器·mybatis
Arva .4 分钟前
说说线程的生命周期和状态
java·开发语言
tryxr12 分钟前
HashTable、HashMap、ConcurrentHashMap 之间的区别
java·开发语言·hash
无事好时节17 分钟前
Linux 线程
java·开发语言·rpc
我家领养了个白胖胖21 分钟前
Prompt、格式化输出、持久化ChatMemory
java·后端·ai编程
IT老兵202529 分钟前
PyTorch DDP多GPU训练实践问题总结
人工智能·pytorch·python·分布式训练·ddp
sszdlbw35 分钟前
后端springboot框架入门学习--第二篇
java·spring boot·学习
阿拉斯攀登36 分钟前
MyBatis 全面解析 & Spring Boot 集成实战
java·spring boot·mybatis·持久层框架
A尘埃38 分钟前
Java业务场景(高并发+高可用+分布式)
java·开发语言·分布式
白仑色42 分钟前
java中的anyMatch和allMatch方法
java·linux·windows·anymatch·allmatch