先引入maven依赖
<dependency>
<groupId>net.coobird</groupId>
<artifactId>thumbnailator</artifactId>
<version>0.4.8</version>
</dependency>
主要代码实现逻辑
File source = new File("source.jpg");
File target = new File("target.jpg");
try (InputStream inputStream = new FileInputStream(source);
OutputStream outputStream = new FileOutputStream(target);
ByteArrayOutputStream out = new ByteArrayOutputStream()) {
double scale = 1.0; //图片缩放比例
double quality = 0.65; //质量分,0~1,值越大,质量越高,对应图片文件大小越大
Thumbnails.of(inputStream).scale(scale).outputQuality(quality).toOutputStream(out);
outputStream.write(out.toByteArray()); // 输出图片
} catch (IOException e) {
e.printStackTrace();
}
最后给大家看看实际效果:
这是我自己制作的java压缩图片的windows桌面软件,免安装,解压后直接打开使用,自带JDK环境。因为前段时间要上传图片,但平台有大小限制,所以自己制作了一个软件,压缩空间大,图片质量高,有需要的可以自行下载来使用,绝对好用!