try { String targetImg = "D:/Blue hills.jpg"; // String pressImg = "D:/20130311220300.jpg"; String pressImg = "D:/html_original.jpg"; File f1 = new File(targetImg); Image src = ImageIO.read(f1); 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 f2 = new File(pressImg); Image src_pao = ImageIO.read(f2); int width_pao = src_pao.getWidth(null); int height_pao = src_pao.getHeight(null); g.drawImage(src_pao, (width-+width_pao)/2, (height-height_pao)/2,width_pao,height_pao, null); // g.drawImage(src_pao, 100, 100,width,height, null); g.dispose(); FileOutputStream out = new FileOutputStream(targetImg); JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out); encoder.encode(image); out.close(); System.out.println("水印添加成功!!"); } catch (Exception e) { // TODO: handle exception System.out.println("水印添加失败!!"); e.printStackTrace(); }