java对pdf文件分页拆分

文章目录

pdf文件拆分

  1. 导入依赖
xml 复制代码
<dependency>
            <groupId>org.apache.pdfbox</groupId>
            <artifactId>pdfbox</artifactId>
            <version>2.0.32</version>
        </dependency>
java 复制代码
2. 大文件拆分
 public static boolean splitPdf() {
        try {
            long st = System.currentTimeMillis();
            log.info("文件拆分进度 start");
            File inputFile = new File("D:\\pdftest\\bigpdf.pdf"); // 输入的PDF文件路径
            PDDocument document = PDDocument.load(inputFile);
            int numberOfPages = document.getNumberOfPages();
            for (int i = 0; i < numberOfPages; i++) {
                log.info("文件拆分进度 " + (i + 1) + "/" + numberOfPages);
                PDDocument splitDocument = new PDDocument();
                PDPage page = document.getPage(i);
                splitDocument.addPage(page);
                String outputFilePath = "D:\\pdftest\\test\\output_" + (i + 1) + ".pdf"; // 输出文件的路径和名称
                splitDocument.save(outputFilePath);
                splitDocument.close();
            }
            document.close();
            log.info("文件拆分进度 end");
            long end = System.currentTimeMillis();
            log.info("拆分和检测总耗时:" + (end - st) + " ms");
        } catch (IOException e) {
            e.printStackTrace();
        }
        return false;
    }

指定分页大小

可以根据需要,决定将哪些分页放在一个文件里面。

相关推荐
飞Link1 分钟前
具身智能音频处理核心框架 PyAudio 深度拆解与实战
开发语言·python·音视频
皙然2 分钟前
深度解析 JVM 方法区:从永久代到元空间的核心逻辑
开发语言·jvm
博语小屋3 分钟前
多路转接select、poll
开发语言·网络·c++·php
沐知全栈开发4 分钟前
C# 预处理器指令
开发语言
m0_730115116 分钟前
C++中的命令模式实战
开发语言·c++·算法
Nyarlathotep01136 分钟前
线程创建和Thread类
java
阿波罗尼亚10 分钟前
JDK17 新特性
java
独自破碎E11 分钟前
【面试真题拆解】Spring事务机制
java·spring·面试
我是咸鱼不闲呀13 分钟前
力扣Hot100系列21(Java)——[多维动态规划]总结(不同路径,最小路径和,最长回文子串,最长公共子序列, 编辑距离)
java·leetcode·动态规划
我命由我1234513 分钟前
Element Plus 2.2.27 的单选框 Radio 组件,选中一个选项后,全部选项都变为选中状态
开发语言·前端·javascript·html·ecmascript·html5·js