给图片添加水印

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 createPicMark(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);  
Graphics2D g=bimage.createGraphics();  
g.setColor(markContentColor);  
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[])  
{  
WaterPicMark wk=new WaterPicMark();  
if(wk.createMark("D:\123.jpg","Welcome!",Color.WHITE,70f,"")){  
System.out.println("制作成功");  
}else{  
System.out.println("失败了!");  
}  
}  
} 

猜你喜欢

转载自liu-yi126.iteye.com/blog/1170981