package
org.bcndyl.util;
import java.awt. * ;
import java.awt.image. * ;
import java.io. * ;
import javax.swing. * ;
import javax.imageio.ImageIO;
import com.sun.image.codec.jpeg. * ;
public class WaterMark ... {
/** *//**
*
* @param pressImg 水印文件,最好用gif或者png可以支持透明
* @param scourceImg 原始图片文件
* @param targetImg 生成图片文件
* @param x 水印的横坐标
* @param y 水印的纵坐标
*/
public final static void pressImage(String pressImg, String scourceImg, String targetImg, int x, int y) ...{
try ...{
// 目标文件
File _file = new File(scourceImg);
Image src = ImageIO.read(_file);
int width = src.getWidth(null);
int height = src.getHeight(null);
BufferedImage image = new BufferedImage(width, height,
BufferedImage.TYPE_INT_RGB);
Graphics g = image.createGraphics();
g.drawImage(src, 0, 0, width, height, null);
// 水印文件
File _filebiao = new File(pressImg);
Image src_biao = ImageIO.read(_filebiao);
int width_biao = src_biao.getWidth(null);
int height_biao = src_biao.getHeight(null);
g.drawImage(src_biao, width - width_biao - x, height - height_biao
- y, width_biao, height_biao, null);
// g.drawImage(src_biao, (width - width_biao) / 2 - x,
// (height - height_biao) / 2 - y, wideth_biao, height_biao, null);
// 水印文件结束
g.dispose();
FileOutputStream out = new FileOutputStream(targetImg);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(image);
out.close();
} catch (Exception e) ...{
e.printStackTrace();
}
}
public static void main(String[] args)...{
//测试方法
WaterMark.pressImage("c:/press.png", "c:/source.jpg", "c:/target.jpg", 0, 0);
}
}
import java.awt. * ;
import java.awt.image. * ;
import java.io. * ;
import javax.swing. * ;
import javax.imageio.ImageIO;
import com.sun.image.codec.jpeg. * ;
public class WaterMark ... {
/** *//**
*
* @param pressImg 水印文件,最好用gif或者png可以支持透明
* @param scourceImg 原始图片文件
* @param targetImg 生成图片文件
* @param x 水印的横坐标
* @param y 水印的纵坐标
*/
public final static void pressImage(String pressImg, String scourceImg, String targetImg, int x, int y) ...{
try ...{
// 目标文件
File _file = new File(scourceImg);
Image src = ImageIO.read(_file);
int width = src.getWidth(null);
int height = src.getHeight(null);
BufferedImage image = new BufferedImage(width, height,
BufferedImage.TYPE_INT_RGB);
Graphics g = image.createGraphics();
g.drawImage(src, 0, 0, width, height, null);
// 水印文件
File _filebiao = new File(pressImg);
Image src_biao = ImageIO.read(_filebiao);
int width_biao = src_biao.getWidth(null);
int height_biao = src_biao.getHeight(null);
g.drawImage(src_biao, width - width_biao - x, height - height_biao
- y, width_biao, height_biao, null);
// g.drawImage(src_biao, (width - width_biao) / 2 - x,
// (height - height_biao) / 2 - y, wideth_biao, height_biao, null);
// 水印文件结束
g.dispose();
FileOutputStream out = new FileOutputStream(targetImg);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(image);
out.close();
} catch (Exception e) ...{
e.printStackTrace();
}
}
public static void main(String[] args)...{
//测试方法
WaterMark.pressImage("c:/press.png", "c:/source.jpg", "c:/target.jpg", 0, 0);
}
}