引言:
最近有给图片添加水印的需求,于是找了Thumbnailator工具;Thumbnailator中可以方便的对图片增加图片水印,但是在添加文字水印上却没有方法。
版本一(未使用Thumbnailator依赖):
/**
* @author:kuqi
* @createTime:2022/1/26 11:13
* @description:
*/
public class ImageUtil {
/**
* 图片添加水印
*
* @param srcImgPath 需要添加水印的图片的路径
* @param outImgPath 添加水印后图片输出路径
* @param waterMark 水印的文字
*/
public static void mark(String srcImgPath, String outImgPath, String waterMark) {
try {
// 读取原图片信息
File srcImgFile = new File(srcImgPath);
Image srcImg = ImageIO.read(srcImgFile);
int srcImgWidth = srcImg.getWidth(null);
int srcImgHeight = srcImg.getHeight(null);
// 初始化画布,图片多大,画布多大
BufferedImage bufImg = new BufferedImage(srcImgWidth, srcImgHeight, BufferedImage.TYPE_INT_RGB);
Graphics2D g = bufImg.createGraphics();
//指定要绘制的图片
g.drawImage(srcImg, 0, 0, srcImgWidth, srcImgHeight, null);
double fontLength = srcImgWidth * 0.3