Java图片嵌套图片

File file = new File("1图片路径");
Image img = ImageIO.read(file);
//水印宽度
int width = img.getWidth(null);
//水印高
int height = img.getHeight(null);
BufferedImage bi = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
Graphics2D g = bi.createGraphics();
g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
g.drawImage(img.getScaledInstance(width, height, Image.SCALE_SMOOTH), 0, 0, null);
ImageIcon imgIcon = new ImageIcon("2图片路径");
//宽
int imgIconWidth = imgIcon.getIconWidth();
//高
int imgIconHeight = imgIcon.getIconHeight();
Image con = imgIcon.getImage();
//透明度
float clarity = 0.7f;
g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP, clarity));
//水印的位置
g.drawImage(con, (width-imgIconWidth)/2, (height-imgIconHeight)/2, null);
g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER));
g.dispose();
File sf = new File("3图片路径");
// 保存图片
ImageIO.write(bi, "png", sf);

1图片

2图片

3图片

发布了21 篇原创文章 · 获赞 0 · 访问量 2254

猜你喜欢

转载自blog.csdn.net/hfaflanf/article/details/103858066