java进行pdf文件压缩


文章目录


pdf文件压缩

添加依赖

xml 复制代码
<dependency>
    <groupId>com.luhuiguo</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>23.1</version>
</dependency>
java 复制代码
public class OptimizePdf {

    public static void optimize(String source, String target) {
        Document doc = new Document(source);
        //设置压缩属性
        OptimizationOptions opt = new OptimizationOptions();
        //删除PDF不必要的对象
        opt.setRemoveUnusedObjects(true);
        //链接重复流
        opt.setLinkDuplcateStreams(false);
        //删除未使用的流
        opt.setRemoveUnusedStreams(false);
        //删除不必要的字体
        opt.setUnembedFonts(true);
        //压缩PDF中的图片
        opt.getImageCompressionOptions().setCompressImages(true);
        //图片压缩比, 0 到100可选,越低压缩比越大
        opt.getImageCompressionOptions().setImageQuality(50);
        doc.optimizeResources(opt);
        //优化web的PDF文档
        doc.optimize();
        doc.save(target);
    }

    public static void main(String[] args) {
        String source = "/Users/zhanghe/Desktop/2.pdf";
        String target = "/Users/zhanghe/Desktop/1.pdf";
        optimize(source, target);
    }
}

参考文献

相关推荐
方圆想当图灵5 分钟前
深入理解软件设计:领域驱动设计 DDD
后端·架构
excel16 分钟前
MySQL 9 在 Windows 上使用 mysqld --initialize-insecure 无响应的排查与解决方案
后端
你怎么知道我是队长20 分钟前
GO语言---defer关键字
开发语言·后端·golang
方圆想当图灵33 分钟前
深入理解软件设计:什么是好的架构?
后端·架构·代码规范
love530love2 小时前
是否需要预先安装 CUDA Toolkit?——按使用场景分级推荐及进阶说明
linux·运维·前端·人工智能·windows·后端·nlp
泯泷2 小时前
「译」为 Rust 及所有语言优化 WebAssembly
前端·后端·rust
梦想很大很大3 小时前
把业务逻辑写进数据库中:老办法的新思路(以 PostgreSQL 为例)
前端·后端·架构
Android洋芋4 小时前
GitHub开源协作实践:HelloGitHub项目详解与企业级应用实战
后端
雨果talk4 小时前
Spring Boot集成Mina的Socket资源管理:从稳定通信到高性能优化
spring boot·后端·性能优化
雨果talk4 小时前
【一文看懂多模块Bean初始化难题】Spring Boot多模块项目中的Bean初始化难题:包名不一致的优雅解决方案
java·spring boot·后端·spring·springboot