zoukankan      html  css  js  c++  java
  • Java图片加文字水印

    Java图片加文字水印

    import java.awt.Color;
    import java.awt.Font;
    import java.awt.Graphics;
    import java.awt.Image;
    import java.awt.image.BufferedImage;
    import java.io.File;
    import java.io.FileOutputStream;
    
    import javax.imageio.ImageIO;
    
    import com.sun.image.codec.jpeg.JPEGCodec;
    import com.sun.image.codec.jpeg.JPEGImageEncoder;
    
    /**
     * 图片加文字水印
     * @author InJavaWeTrust
     *
     */
    public class Watermark {
    	
    	/**
    	 * 图片加文字水印
    	 * @param text 文字
    	 * @param targetImg 目标图片
    	 * @param fontName 字体名
    	 * @param fontStyle 字体样式
    	 * @param color 字体颜色
    	 * @param fontSize 字体大小
    	 * @param x 文字x坐标
    	 * @param y 文字y坐标
    	 */
    	public static void watermark(String text, String targetImg,
    			String fontName, int fontStyle, Color color, int fontSize, int x,
    			int y) {
    		try {
                File _file = new File(targetImg);
                Image src = ImageIO.read(_file);
                int wideth = src.getWidth(null);
                int height = src.getHeight(null);
                BufferedImage image = new BufferedImage(wideth, height,
                        BufferedImage.TYPE_INT_RGB);
                Graphics g = image.createGraphics();
                g.drawImage(src, 0, 0, wideth, height, null);
                 
                g.setColor(color);
                g.setFont(new Font(fontName, fontStyle, fontSize));
     
                g.drawString(text, wideth - fontSize - x, height - fontSize
                        / 2 - y);
                g.dispose();
                FileOutputStream out = new FileOutputStream(targetImg);
                JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
                encoder.encode(image);
                out.close();
            } catch (Exception e) {
                System.out.println(e);
            }
    	}
    
    	public static void main(String[] args) {
    		String text = "http://injavawetrust.iteye.com";
    		String targetImg = "C:\Users\admin\Desktop\ch\state.png";
    		watermark(text, targetImg, null, Font.BOLD, Color.RED, 20, 240, 10);
    	}
    
    }
  • 相关阅读:
    webdriver学习
    [Sqlite]-->Java使用jdbc连接Sqlite数据库进行各种数据操作的详细过程(转)
    java 二维码
    java 解析json超大文件(转)
    嵌套三目运算符
    实体的字段以is开头的教训
    easyui中formatter的使用
    springmvc中的controller是单例的
    hibernate 中baseservice中添加事物
    easyui中添加富文本编辑器
  • 原文地址:https://www.cnblogs.com/muyuge/p/6152047.html
Copyright © 2011-2022 走看看