原文地址:https://xeblog.cn/articles/10
Thumbnailator 简介
Thumbnailator 是一个高质量的缩略图生成的 Java 库。
支持:
- 从现有的图像创建高质量的缩略图。
- 给图片加水印,可以设置水印的透明度(0%~100%)。
- 支持缩略图的旋转,大小调整。
- 图片批量处理。
官方介绍:https://github.com/coobird/thumbnailator
应用
添加依赖
<dependency>
<groupId>net.coobird</groupId>
<artifactId>thumbnailator</artifactId>
<version>0.4.8</version>
</dependency>
图片加水印
本文是将水印图片放入项目的 resource 目录下,原图是放在桌面上的,最后生成的加水印的图片也是放在桌面上,可以根据需要更换相应路径
代码示例:
public static void main(String[] args) {
// 原图片地址
String imageUrl = "/Users/yanpanyi/Desktop/image.jpeg";
// 水印图片 相对于resource目录
String watermark = "/watermark.png";
// 输出到文件
String outputFile = "/Users/yanpanyi/Desktop/test.jpeg";
// 不透明度
float opacity = 0.25f;
try {
// 获取原图文件
File file = new File(imageUrl);
// ImageIO读取图片
BufferedImage image = ImageIO.read(file);
Thumbnails.of(image)
// 设置图片大小
.size(image.getWidth(), image.getHeight())
// 加水印 参数:1.水印位置 2.水印图片 3.不透明度0.0-1.0
.watermark(Positions.BOTTOM_RIGHT, ImageIO.read(WatermarkDemo
.class.getResourceAsStream(watermark)), opacity)
// 输出到文件
.toFile(outputFile);
} catch (IOException e) {
e.printStackTrace();
}
}
测试效果
原图
水印图
原图加水印后
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于