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>
相关推荐
小熊officer5 分钟前
Nginx中正向代理,反向代理,负载均衡
java·nginx·负载均衡
信码由缰17 分钟前
Java 应用容器化与部署
java
7***533425 分钟前
Rust错误处理模式
开发语言·后端·rust
方白羽31 分钟前
Kotlin遇上Java 静态方法
android·java·kotlin
通往曙光的路上32 分钟前
焚决糟糕篇
java·spring boot·tomcat
T***160736 分钟前
C++在游戏开发中的AI行为树
开发语言·c++
无心水1 小时前
【Python实战进阶】5、Python字符串终极指南:从基础到高性能处理的完整秘籍
开发语言·网络·python·字符串·unicode·python实战进阶·python工业化实战进阶
狂奔小菜鸡1 小时前
Day18 | 深入理解Object类
java·后端·java ee
jiayong231 小时前
Maven NUL文件问题 - 解决方案实施报告
java·maven
未秃头的程序猿1 小时前
🔒 从单机到分布式:三大锁机制深度剖析与实战指南
java·后端