java实现给图片添加水印
通过Java代码进行图片添加水印
package com.sys.controller; import java.awt.Color; import java.awt.Font; import java.awt.Graphics2D; import java.awt.Image; import java.awt.image.BufferedImage; import java.io.File; import java.io.FileOutputStream; import javax.imageio.ImageIO; public class ImageRemark { private static final Color color = Color.BLACK; private static final Font font = new Font("宋体", Font.BOLD, 26);//字体 public static void main(String[] args){ addWatermark("C:\\Users\\Administrator\\Desktop\\Snipaste_2022-09-07_10-13-29.png","C:\\Users\\Administrator\\Desktop\\2.png","水印内容"); } public static void addWatermark(String path, String outPathInteger,String remark) { try { File srcImgFile = new File(path); 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); g.setColor(color); g.setFont(font); //设置水印的坐标 int x = 20; int y = 40; g.drawString(remark, x, y); //从坐标x,y开始添加水印 g.dispose(); // 输出图片 FileOutputStream outImgStream = new FileOutputStream(outPathInteger); ImageIO.write(bufImg, "jpg", outImgStream); outImgStream.flush(); outImgStream.close(); }catch (Exception e){ e.printStackTrace(); } } }
一点点学习,一丝丝进步。不懈怠,才不会被时代所淘汰!