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;
    }

指定分页大小

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

相关推荐
byxdaz5 分钟前
Qt中绘制不规则控件
开发语言·qt
繁星蓝雨6 分钟前
Qt使用QGraphicsView绘制线路图————附带详细实现代码
开发语言·qt
martian6659 分钟前
《Spring Boot全栈开发指南:从入门到生产实践》
java·开发语言·spring boot
快来卷java19 分钟前
深入剖析雪花算法:分布式ID生成的核心方案
java·数据库·redis·分布式·算法·缓存·dreamweaver
规划GIS会20 分钟前
ima知识库第二弹,Python for ArcGIS Pro | 简简单单写个脚本工具
开发语言·python·arcgis
郁大锤25 分钟前
如何在 Windows 上安装与配置 Tomcat
java·windows·tomcat
tpoog25 分钟前
[MySQL]数据类型
android·开发语言·数据库·mysql·算法·adb·贪心算法
三次拒绝王俊凯26 分钟前
在 IntelliJ IDEA 2019 中安装/启用 PlantUML 插件
java·ide·intellij-idea
fengchengwu201229 分钟前
python下载m3u8格式视频
开发语言·python·m3u8
moxiaoran575334 分钟前
多线程开发中List的使用
java