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); }}