java - 图片图标 + 图片图标 = 图片图标

标签 java graphics

我有两个 ImageIcon,我想创建第三个 ImageIcon,它在 nr 1 上绘制了 nr 2。 我最好怎么做?

最佳答案

以下代码从两个 ImageIcon 中获取一个 Image 并创建一个新的 ImageIcon

第二个 ImageIcon 的图像绘制在第一个图像的顶部,然后生成的图像用于制作新的 ImageIcon:

Image img1 = imageIcon1.getImage();
Image img2 = imageIcon2.getImage();

BufferedImage resultImage = new BufferedImage(
    img1.getWidth(null), img1.getHeight(null), BufferedImage.TYPE_INT_ARGB);

Graphics2D g = resultImage.createGraphics();
g.drawImage(img1, 0, 0, null);
g.drawImage(img2, 0, 0, null);
g.dispose();

ImageIcon resultImageIcon = new ImageIcon(resultImage);

编辑 (修复了一些错误,添加了透明度支持。)

为了允许透明度,BufferedImage.TYPE_INT_ARGB 可以用于构造函数中的图像类型,而不是没有 alpha channel 的 BufferedImage.TYPE_INT_RGB

关于java - 图片图标 + 图片图标 = 图片图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/863223/

相关文章:

java - 无法在Android中使用apache poi解密excel文件

Java程序无法运行,我不知道出了什么问题

java - Swing GUI 中的储 jar 液位指示器图像

graphics - ($VersionNumber < 6) 在 Mathematica 中裁剪导出的图像

Java MouseListener图形实现

c# - 使用 C# 在 Datagridview 中绘制统计图

java - ACM编程题

java - Spotify docker maven 构建多个镜像

python - 如何在 vtk 的纹理表面上只显示三角形边界?

java - 不幸的是应用程序已停止(第一次 Activity )