对图片的编辑是一个常见的编程需求,比如缩小图片、加水印等等,而thumbnailator就是一个非常好用的开源图片编辑Java类库,
https://github.com/coobird/thumbnailator
本文将对此工具进行介绍并给出代码样例。
1. 项目引入thumbnailator类库
以Maven项目为例,可以按如下配置添加thumbnailator依赖类库,
net.coobird
thumbnailator
0.4.8
2. 获取缩略图
获取缩略图有两种方式,一个是指定缩放后的图片尺寸,还有一个指定图片缩放比例。
指定缩放尺寸到宽150+高100,
Thumbnails.of(new File("bird.jpg")).size(150, 100).toFile(new File("thumbnail.jpg"));
指定缩放比例为四分之一,
BufferedImage img = ImageIO.read(new File("bird.jpg"));
BufferedImage thumbnail = Thumbnails.of(img).scale(0.25).asBufferedImage();
ImageIO.write(thumbnail, "jpg", new File("bird_scaled_25.jpg"));
图片缩放的效果图,