JAVA——PDF多文件合并

嗐,好久没有更新了,直接上代码吧!

以下是Java将多个PDF文件合并的示例代码,使用iText库实现:

package com.ssh;

import java.io.FileOutputStream;
import java.util.ArrayList;
import com.itextpdf.text.Document;
import com.itextpdf.text.pdf.PdfCopy;
import com.itextpdf.text.pdf.PdfReader;

public class MergePDF {

    public static void main(String[] args) {
        String[] files = { 
        		"F:\\开发文档\\2023项目汇总\\报销\\1.pdf", 
        		"F:\\开发文档\\2023项目汇总\\报销\\2.pdf", 
        		"F:\\开发文档\\2023项目汇总\\报销\\3.pdf",
        		"F:\\开发文档\\2023项目汇总\\报销\\4.pdf",
        		"F:\\开发文档\\2023项目汇总\\报销\\5.pdf"
        		}; // 待合并的PDF文件路径
        String resultFileName = "F:\\开发文档\\2023项目汇总\\报销\\result.pdf"; // 合并后的PDF文件名及路径

        try {

            Document document = new Document();

            FileOutputStream fos = new FileOutputStream(resultFileName);

            PdfCopy copy = new PdfCopy(document, fos);

            document.open();

            ArrayList<PdfReader> readerList = new ArrayList<PdfReader>();

            int totalPages = 0;

            for (String file : files) {
                PdfReader reader = new PdfReader(file);
                readerList.add(reader);
                totalPages += reader.getNumberOfPages();
            }

            for (PdfReader reader : readerList) {
                for (int i = 1; i <= reader.getNumberOfPages(); i++) {
                    copy.addPage(copy.getImportedPage(reader, i));
                }
            }

            document.close();
            System.out.println("成功合并" + files.length + "个PDF文件,共计" + totalPages + "页。");

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

上述代码通过读取待合并的PDF文件,将它们的每一页内容逐一写入到新的PDF文件中,实现了多个PDF文件合并为一个文件的功能。需要注意的是,上述代码使用了iText库,在使用前需要将iText的jar包导入项目中。

itextpdf-5.1.2.jar https://www.aliyundrive.com/s/7dkgCSiZXc2 提取码: 4q5z 点击链接保存,或者复制本段内容,打开「阿里云盘」APP ,无需下载极速在线查看,视频原画倍速播放。

结果展示:

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值