2008-02-27
给图片加水印图片
关键字: 水印
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);
}
}
发表评论
- 浏览: 7728 次
- 性别:

- 来自: 北京

- 详细资料
搜索本博客
最近加入圈子
链接
最新评论
-
Spring2结合DWR2的用户注 ...
javaprograms看看是不是你的dwr的包的版本不对呢
-- by lveyo -
Spring2结合DWR2的用户注 ...
哈哈,好啊
-- by kjj -
Spring2结合DWR2的用户注 ...
严重: Context initialization failed org.sp ...
-- by javaprograms -
innerHTML的性能问题
hax我看了你的分析文章,我也是用到的时候才发现老外的那篇文章的,也没想去研究为 ...
-- by lveyo -
innerHTML的性能问题
对于返回的 element 使用后是不是需要手动的delete掉? 否则会不会有 ...
-- by myreligion







评论排行榜