package com.example.controller.demo;
import java.awt.AlphaComposite;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.geom.AffineTransform;
import java.awt.image.AffineTransformOp;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.lang.annotation.Target;
import javax.imageio.ImageIO;
/**
* 添加图片水印工具类
*/
public class WaterMarkUtils {
/**
* 获取水印地址
* @return
*/
private static String getWaterMarkPath(){
String path=Thread.currentThread().getContextClassLoader().getResource("watermark/water.png").getPath();
return path;
}
/**
* 图片格式:JPG
*/
private static final String PICTRUE_FORMATE_JPG = "png";
private static final String TARGETIMGPATH = "C:\\Users\\lwz\\Desktop\\temp.png";
// private static final String DISTPATH = "C:\\Users\\lwz\\Desktop\\temp\\temp.png";
private static final String WATERIMGPATH = "C:\\Users\\0\\Desktop\\img\\water.png";
private WaterMarkUtils() {
}
/**
* 添加图片水印
* @param //targetImg 目标图片路径,如:C://myPictrue//1.jpg
* @param //waterImg 水印图片路径,如:C://myPictrue//logo.png
* @param x 水印图片距离目标图片左侧的偏移量,如果x<0, 则在正中间
* @param y 水印图片距离目标图片上侧的偏移量,如果y<0, 则在正中间
* @param alpha 透明度(0.0 -- 1.0, 0.0为完全透明,1.0为完全不透明)
*/
public final static void pressImage(String filePath, int x, int y, float alpha) {
String imgType = filePath.substring(filePath.lastIndexOf(".")+1,filePath.length());
try {
File targetFile = new File(filePath);
Image image = ImageIO.read(targetFile);
int width &
java 编辑图片(压缩文件、加水印)
最新推荐文章于 2024-06-29 16:01:21 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)