首先,也是最重要的就是在你的maven项目的pom.xml文件中引入依赖:
<dependency>
<groupId>net.coobird</groupId>
<artifactId>thumbnailator</artifactId>
<version>0.4.8</version>
</dependency>
下面介绍如何使用这个工具
这里使用链式编程
Thumbnails.of(new File("D:/picture/tupian.jpg")).size(200, 200)
.watermark(Positions.BOTTOM_RIGHT, ImageIO.read(new File(BasePath+"watermark.png")), 0.25f)
.outputQuality(0.8f).toFile("D:/picture/tupiannew.jpg");
Thumbnails.of() //这个方法可以传入一个文件也可以传入一个文件流
watermark()方法中的三个参数分别是:水印图的位置,水印图片的绝对路径,透明度。
由于我的水印图片保存在项目文件的classpath下所以通过执行线程逆推到类加载器进而获取水印图片的绝对值路径
public String BasePath = Thread.currentThread().getContextClassLoader().getResource("").getPath();
Postions配置存放水印位于图片的什么位置,这样存放于图片的右下角。
outputQuality()方法中设这压缩比例,我这里设置的为80%
toFile()方法设置处理后的图片放置的路径。