⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 文字水印watermark.java

📁 java源码
💻 JAVA
字号:
package kitchen.tool;

import java.awt.*;
import java.awt.image.*;
import java.io.*;

//import javax.imageio.ImageIO;
import javax.swing.*;
import com.sun.image.codec.jpeg.*;
import java.text.AttributedString;
import java.awt.font.TextAttribute;
import java.text.AttributedCharacterIterator;


public class WaterMark{
     /** *//**
        * 给图片添加水印  只加在大图上添加
       * @param filePath 需要添加水印的图片的路径
       * @param markContent 水印的文字
       * @param markContentColor 水印文字的颜色
       * @param qualNum 图片质量 8f
       * @param fontType 字体 "黑体"
       * @param fontsize 字体大小 23
       * @return
       */

	  public WaterMark(){}
      public boolean createMark(String filePath,String markContent,Color MarContentColor,String fontType,int fontsize,float qualNum){

          ImageIcon imgIcon=new ImageIcon(filePath);
          
		  Image theImg =imgIcon.getImage();
          
		  int width=theImg.getWidth(null);
          
		  int height= theImg.getHeight(null);
          
		  BufferedImage bimage = new BufferedImage(width,height, BufferedImage.TYPE_INT_RGB);
          
		  Graphics2D g=bimage.createGraphics();
          
		  g.setColor(MarContentColor);//在这可设置颜色Color.MAGENTA
          
		  g.setBackground(Color.white);
          
		  g.drawImage(theImg, 0, 0, null );
          
		  AttributedString ats = new AttributedString(markContent);
          
		  Font f = new Font(fontType,Font.BOLD, fontsize);//设置字体类型大小""

          ats.addAttribute(TextAttribute.FONT, f, 0,markContent.length() );

		  AttributedCharacterIterator iter = ats.getIterator();

          g.drawString(iter,width/5,height-10); //添加水印的文字和设置水印文字出现的内容
         
		  g.dispose();

          try{
          
		  FileOutputStream out=new FileOutputStream(filePath);
          
		  JPEGImageEncoder encoder =JPEGCodec.createJPEGEncoder(out);
          
		  JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(bimage);
          
		  param.setQuality(qualNum, true);//设置字的明度
          
		  encoder.encode(bimage, param);
          
		  out.close();
          
		  }catch(Exception e){ return false; }
          
		  return true;
      }

   
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -