Java实现pdf文件压缩(aspose-pdf实现压缩、itextpdf去除aspose-pdf版权水印)

Java实现pdf文件压缩

时间换空间,实现pdf文件无损压缩。

1、依赖准备

市面上操作pdf文件的组件有spire.pdf.free、itextpdf、openpdf、pdfbox等,它们各有千秋。我们主要完成的场景为压缩,减少文件大小去优化存储、传输等。

在这里选取的组件为aspose-pdfitextpdf,原因是spire.pdf.free压缩代码比较直观和简单但是只能免费压缩前10页,itextpdf压缩代码较为复杂开发难度大适合去水印,而openpdfpdfbox也有开发难度较大的问题。

1、aspose-pdf依赖

可能比较冷门,阿里云maven仓库等没有对应的依赖,无法通过gav坐标添加!因此我们需要到中央仓库下载jar包!

地址为https://mvnrepository.com/artifact/com.aspose/aspose-pdf

建议选择低版本,高版本难以去除版权水印,如这里选择21.11版本的

将jar引入工程

这里可以参考这篇文章

https://blog.csdn.net/m0_46357847/article/details/140749772

如果是gradle工程,可参考下图

2、itextpdf依赖

这里主要用于去除aspose-pdf的版权水印,直接添加即可。

xml 复制代码
<!-- https://mvnrepository.com/artifact/com.itextpdf/itextpdf -->
<dependency>
    <groupId>com.itextpdf</groupId>
    <artifactId>itextpdf</artifactId>
    <version>5.5.13</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.itextpdf/itext-asian -->
<dependency>
    <groupId>com.itextpdf</groupId>
    <artifactId>itext-asian</artifactId>
    <version>5.2.0</version>
</dependency>
相关推荐
心随雨下15 分钟前
Tomcat日志配置与优化指南
java·服务器·tomcat
『 时光荏苒 』20 分钟前
网页变成PDF下载到本地
前端·javascript·pdf·网页下载成
Kapaseker21 分钟前
Java 25 中值得关注的新特性
java
wljt24 分钟前
Linux 常用命令速查手册(Java开发版)
java·linux·python
撩得Android一次心动27 分钟前
Android 四大组件——BroadcastReceiver(广播)
android·java·android 四大组件
canonical_entropy31 分钟前
Nop平台到底有什么独特之处,它能用在什么场景?
java·后端·领域驱动设计
chilavert31833 分钟前
技术演进中的开发沉思-174 java-EJB:分布式通信
java·分布式
国服第二切图仔38 分钟前
Rust开发实战之简单游戏开发(piston游戏引擎)
开发语言·rust·游戏引擎
ii_best1 小时前
安卓/IOS工具开发基础教程:按键精灵一个简单的文字识别游戏验证
android·开发语言·游戏·ios·编辑器
草莓熊Lotso1 小时前
C++ 继承特殊场景解析:友元、静态成员与菱形继承的底层逻辑
服务器·开发语言·c++·人工智能·经验分享·笔记·1024程序员节