我正在考虑在 Java 中做两件事的最佳方法:
- 合并两个图像,一个在 .PNG 中的背景,另一个在 .GIF 或 .PNG 中(具有透明度并且与第一个重叠);
- 将合并的图像转换为 .GIF(具有透明度)。
我不想渲染它们,只是为了处理 java 类中的图像并将生成的图像写入文件。
谁能帮我?最好的方法是什么?谢谢!
编辑:谢谢大家的建议!这就是我最终使用的!很简单!
BufferedImage background = ImageIO.read(new File("image.jpg"));
WritableRaster raster = background.getRaster();
BufferedImage layer = ImageIO.read(new File("overlay.png"));
Graphics2D g2d = (Graphics2D)background.getGraphics();
g2d.drawImage(layer,72,80,null);
关于第二个问题,我仍然无法使用具有透明度的 .gif 扩展名来保存它。这个
ImageIO.write(bufferedImage,"gif",file);
创建 .gif 图像文件,但它失去了透明度!有谁知道我该怎么做?JAI 也没有 gif 编码器。谢谢你。