一、工具
使用maven引入,即可使用
<dependency>
<groupId>net.coobird</groupId>
<artifactId>thumbnailator</artifactId>
<version>0.4.16</version>
</dependency>
测试功能
1.从图片创建一张缩略图,并输出到文件
以下创建一张以original.jpg为基础,大小为160*160的缩略图
Thumbnails.of(new File("original.jpg"))
.size(160, 160) #大小160*160
.toFile(new File("thumbnail.jpg"));
Thumbnails.of("original.jpg")
.size(160, 160) #大小160*160
.toFile("thumbnail.jpg");
2.从图片创建一张带旋转和水印的缩略图
Thumbnails.of(new File("original.jpg"))
.size(160, 160) #大小160*160
.rotate(90) #顺时针旋转90度
.watermark(Positions.BOTTOM_RIGHT, ImageIO.read(new File("watermark.png")), 0.5f) #右下角放置水印图片,水印有50%的透明度
.outputQuality(0.8) #输出80%压缩后的图片
.toFile(new File("image-with-watermark.jpg"));
3.从图片创建一个压缩后的输出流
OutputStream os = ...;
Thumbnails.of("large-picture.jpg")
.size(200, 200) #大小200*200
.outputFormat("png") #输出PNG格式
.toOutputStream(os);
4.从图片创建一个固定大小的缩略图
BufferedImage originalImage = ImageIO.read(new File("original.png"));
BufferedImage thumbnail = Thumbnails.of(originalImage)
.size(200, 200)
.asBufferedImage();
5.从图片创建一个通过默认缩放技术实现的指定比例的压缩流
BufferedImage originalImage = ImageIO.read(new File("original.png"));
BufferedImage thumbnail = Thumbnails.of(originalImage)
.scale(0.25) #25%压缩
.asBufferedImage();
6.从图片创建一个缩略图,输出到另一个目录,并自动重命名
File destinationDir = new File("path/to/output");
Thumbnails.of("apple.jpg", "banana.jpg", "cherry.jpg")
.size(200, 200)
.toFiles(destinationDir, Rename.PREFIX_DOT_THUMBNAIL); #新文件名会追加thumbnail.的前缀
也可以不进行重命名,使用原有名称
File destinationDir = new File("path/to/output");
Thumbnails.of("apple.jpg", "banana.jpg", "cherry.jpg")
.size(200, 200)
.toFiles(destinationDir, Rename.NO_CHANGE); #不进行重命名
Featured Tags
工具类
XML
JAVA
Java
Mybatis
反射
代理模式
日志
工厂方法模式
装饰器模式
结果集映射
Web
RESTful
WebAPI规范
SQL
Redis
Jira
SynapseRT
有限状态机 State Machine
statemachine
SpringBoot
IDEA
Tomcat
Vue
Docker
Springboot
Apache Ignite
项目发布与调试
白帽子讲web安全
黑名单
通用化
企业中台实践
MacOS
docker
minio
springboot
分布式存储
Postgres
数据备份
数据恢复
K8S
抖音小程序
开发实践
SpringCloud
Skywalking
Nacos
Kubernetes
Secret
ConfigMap
Git
GitOps
云原生
RocketMQ
ActiveMQ-Artemis
ClickHouse
Kamailio
sipp
Homer
heplify
heplify-server
HEP