`
堕落暗夜
  • 浏览: 6810 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
最近访客 更多访客>>
社区版块
存档分类
最新评论

java实现给图片添加水印和文字(转载)

阅读更多
Java代码 复制代码
  1. import java.io.*;   
  2. import com.sun.image.codec.jpeg.*;   
  3. import java.awt.*;   
  4. import java.awt.image.BufferedImage;   
  5. import java.awt.image.*;   
  6. import javax.swing.*;   
  7.   
  8.   
  9. public class Test...{   
  10.     public static void main(String[]args) throws Exception...{   
  11.            
  12.         //需要添加水印的图片的路径   
  13.         
    <a>d</a>
     InputStream is = 
    new FileInputStream("需要添加水印的图片.jpg");   
  14.            
  15.            
  16.         //通过JPEG图象流创建JPEG数据流解码器   
  17.         JPEGImageDecoder jpegDecoder = JPEGCodec.createJPEGDecoder(is);   
  18.         //解码当前JPEG数据流,返回BufferedImage对象   
  19.         BufferedImage buffImg = jpegDecoder.decodeAsBufferedImage();   
  20.         //得到画笔对象   
  21.         Graphics g = buffImg.getGraphics();   
  22.            
  23.         //创建你要附加的图象。   
  24.         //需要添加的图片水印  
  25.         ImageIcon imgIcon = new ImageIcon("图片水印.jpg");    
  26.            
  27.         //得到Image对象。   
  28.         Image img = imgIcon.getImage();   
  29.            
  30.         //将小图片绘到大图片上。   
  31.         //5,300 .表示你的小图片在大图片上的位置。   
  32.         g.drawImage(img,5,330,null);   
  33.            
  34.            
  35.            
  36.         //设置颜色。   
  37.         g.setColor(Color.BLACK);   
  38.            
  39.            
  40.         //最后一个参数用来设置字体的大小   
  41.         Font f = new Font("宋体",Font.BOLD,30);   
  42.            
  43.         g.setFont(f);   
  44.            
  45.         //10,20 表示这段文字在图片上的位置(x,y) .第一个是你设置的内容。   
  46.         g.drawString("添加的水印文字(测试)",10,30);   
  47.            
  48.         g.dispose();   
  49.            
  50.            
  51.            
  52.         OutputStream os = new FileOutputStream("最终生成的有水印的图片.jpg");   
  53.            
  54.         //创键编码器,用于编码内存中的图象数据。   
  55.            
  56.         JPEGImageEncoder en = JPEGCodec.createJPEGEncoder(os);   
  57.         en.encode(buffImg);   
  58.            
  59.            
  60.         is.close();   
  61.         os.close();   
  62.            
  63.         System.out.println ("水印添加完成");   
  64.            
  65.            
  66.     }       
  67.        
  68. }   
  69.   
  70. //图片的为位置控制:    修改代码中的: g.drawImage(img,5,330,null);  5(x) 和 330(y)   
  71. //内容和字显示的位置:      g.drawString("水印显示文字(测试)",10,30);   
  72.   
  73.   
  74. 本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/caoyinghui1986/archive/2008/05/19/2459323.aspx  
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics