如何使用 Java OpenCV 库在图像上创建水印?
javaobject oriented programmingprogramming
以下 Java 示例在给定图像上绘制水印("Hello")并将其保存回去。
示例
import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; public class WaterMarkExample { public static void main(String[] args) throws IOException { //读取图像的内容 File file = new File("D:\Images\test1.jpg"); BufferedImage img = ImageIO.read(file); //创建一个空图像用于输出 int height = img.getHeight(); int width = img.getWidth(); BufferedImage res = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); //创建一个图形对象 Graphics graphics = res.getGraphics(); graphics.drawImage(img, 0, 0, null); //创建水印字体 Font font = new Font("Arial", Font.PLAIN, 45); graphics.setFont(font); graphics.setColor(new Color(255, 150, 200, 30)); //在图片上绘制水印字符串 graphics.drawString("Hello", width/7, height/5); //处理字符串 graphics.dispose(); //写入结果图像。 file = new File("D:\Images\watermark.jpg"); ImageIO.write(res, "jpg", file); } }