package com.example.demo;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
@SpringBootTest
class DemoApplicationTests {
@Test
void contextLoads() {
try {
//读取网络图片
// URL url = new URL("https://zyq2022.oss-cn-chengdu.aliyuncs.com/test.png");
// BufferedImage image = ImageIO.read(url.openStream());
// 读取图片文件(读取本地图片)
File file = new File("E:\\opt\\IMG_8992.JPG");
System.out.println("图片名称:" + file.getName());
System.out.println("图片大小:" + file.length() / 2 + " kb");
// 将文件对象转化为图片对象
BufferedImage image = ImageIO.read(file);
System.out.println("图片宽度:" + image.getWidth() + " px");
System.out.println("图片高度:" + image.getHeight() + " px");
// 创建画笔
Graphics2D pen = image.createGraphics();
// 设置画笔颜色为白色
pen.setColor(Color.RED);
// pen.setColor(new Color(179, 250, 233, 200));
// 设置画笔字体样式为微软雅黑,斜体,文字大小为20px
pen.setFont(new Font("微软雅黑", Font.ITALIC, 50));
// 写上水印文字和坐标
pen.drawString("出版社出版水印", 8, 950);
// 创建新图片文件
File files = new File("E:\\opt\\test2.jpg");
// 将处理好的图片数据写入到新图片文件中
FileOutputStream fos = new FileOutputStream(files);
ImageIO.write(image, "jpg", fos);
} catch (Exception e) {
}
}
}
java实现图片加水印
于 2022-07-07 21:04:01 首次发布