读书人

Java图片增添水印

发布时间: 2012-12-20 09:53:21 作者: rapoo

Java图片添加水印

import java.awt.*;  import java.awt.image.*;  import java.io.*;  import javax.swing.*;  import com.sun.image.codec.jpeg.*;  public class WaterMark {  /**  * 给图片添加水印  * @param filePath 需要添加水印的图片的路径  * @param markContent 水印的文字  * @param markContentColor 水印文字的颜色  * @param qualNum 图片质量  * @return  */  public boolean createMark(String filePath,String markContent,Color markContentColor,float qualNum,String watermark)  {  ImageIcon imgIcon=new ImageIcon(filePath);  Image theImg =imgIcon.getImage();  int width=theImg.getWidth(null);  int height= theImg.getHeight(null);  //ImageIcon waterIcon=new ImageIcon(watermark);  // Image waterImg =waterIcon.getImage();  BufferedImage bimage = new BufferedImage(width,height, BufferedImage.TYPE_INT_RGB);  Font font = new Font("新宋体", Font.PLAIN, 15);  Graphics2D g=bimage.createGraphics();  g.setColor(markContentColor);  g.setFont(font);  g.setBackground(Color.white);  g.drawImage(theImg, 0, 0, null );  // g.drawImage(waterImg, width*2, height, null );  g.drawString(markContent,width-100,height-30); //添加水印的文字和设置水印文字出现的内容  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;  }  public static void main(String arg[]){  WaterMark wk=new WaterMark();  if(wk.createMark("F:\\资料整理\\图片\\网上图片\\22f64410694967fcc3ce79bd.jpg","http://www.51dass.com",Color.RED,70f,"")){  System.out.println("制作成功");  }else{  System.out.println("我失败了!");  }  }  }

?

读书人网 >编程

热点推荐