Java使用Thumbnailator給圖片加水印

原文地址:https://xeblog.cn/articles/10git

Thumbnailator簡介

Thumbnailator是一個高質量的縮略圖生成的Java庫。github

支持:bash

  • 從現有的圖像建立高質量的縮略圖。
  • 給圖片加水印,能夠設置水印的透明度(0%~100%)。
  • 支持縮略圖的旋轉,大小調整。
  • 圖片批量處理。

官方介紹:github.com/coobird/thu…測試

應用

添加依賴

<dependency>
	<groupId>net.coobird</groupId>
	<artifactId>thumbnailator</artifactId>
	<version>0.4.8</version>
</dependency>
複製代碼

圖片加水印

本文是將水印圖片放入項目的resource目錄下,原圖是放在桌面上的,最後生成的加水印的圖片也是放在桌面上,能夠根據須要更換相應路徑ui

代碼示例:spa

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();
	}
}
複製代碼

測試效果

原圖code

水印圖cdn

原圖加水印後blog

參考

github.com/coobird/thu…圖片

相關文章
相關標籤/搜索