图片尺寸压缩
hutool ,它是个java工具库,官网地址:https://hutool.cn/docs/#/
图片工具部分有使用示例,缩放比例设置为0.5,压缩后的图片是原图的一半(宽度、高度)
ImgUtil.scale(
FileUtil.file("d:/img/a.jpg"),
FileUtil.file("d:/img/a1.jpg"),
0.5f//缩放比例
);
尺寸和质量压缩
Thumbnails
它是google使用的开源的工具类,可在不改变原图大小情况下,压缩原图的质量,来减少图片大小,github地址:https://github.com/coobird/thumbnailator
<dependency>
<groupId>net.coobird</groupId>
<artifactId>thumbnailator</artifactId>
<version>0.4.8</version>
</dependency>
Thumbnails.of("d:/img/a.jpg") //原图文件的路径
.scale(1f) //scale是指定图片的大小,值在0到1之间,1f就是原图大小
.outputQuality(0.5f) //图片的质量,值也是在0到1,越接近于1质量越好
.toFile("d:/img/a1.jpg"); //压缩后文件的路径
这个工具无法正确压缩出png格式的图片,因为png本身就是一种无损的图片格式,而jpg是一种压缩的图片格式,因此可以把png格式输出为 jpg 来达到压缩目的
Thumbnails.of("d:/img/a.jpg")
.scale(1f)
.outputQuality(0.5f)
.outputFormat("jpg")
.toFile("d:/img/a1.jpg");
原文链接:https://blog.csdn.net/zhuyu19911016520/article/details/103404959