2017-08-25 94 views
-4

我的情况是我想创建一个Java程序,它在您的计算机上创建.png图像。我可以做到这一点,但.png图像是黑色的(没有)。我希望图像有一些东西在里面。所以我创建了一个带有swing的ImageIcon,并且我想将该图像添加到我创建的.png中,因此它会在我的计算机上使用该ImageIcon图像创建一个新图像。使用.png中的图像创建.png图像

+0

这会很容易告诉你为什么你是如果你的问题包括你创建和写入图像的代码,写一个黑色的图像。 – VGR

回答

2

创建任何Swing组件的图像的基础是使用:

BufferedImage image = new BufferedImage(component.getWidth(), component.getHeight(), BufferedImage.TYPE_INT_RGB); 
Graphics2D g2d = image.createGraphics(); 
component.print(g2d); 
g2d.dispose(); 

然后你可以保存“图像”使用ImageIO

或者您可以使用具有额外的功能到Screen Image

  1. 手柄透明组件
  2. 创建组件
  3. 的区域的图像创建一个不显示部件的图像可见窗口
  4. 将图像写入文件