2

我有一个只包含一个图标的 JLabel,我可以使用 label1.getIcon() 获取该图标,但我不知道如何将该图标转换为 BufferedImage。仅供参考,我不是在谈论 ImageIcon,只是在谈论 Icon。另外,我在如何将图标从 JLabel 转换为 BufferedImage?,但我似乎无法弄清楚。

与往常一样,非常感谢任何示例或解释。谢谢!

4

2 回答 2

3

你可以试试这个。

// Get the icon
Icon ico = label1.getIcon();
// Create a buffered image
BufferedImage bimg = new BufferedImage(ico.getIconWidth(), ico.getIconHeight(),
                                       BufferedImage.TYPE_INT_RGB);
// Create the graphics context
Graphics g = bimg.createGraphics();
// Now paint the icon
ico.paintIcon(null, g, 0, 0);
g.dispose();
于 2013-01-09T04:55:19.843 回答
3

作为JLabel.getIcon()返回一个图标,所以你想将图标转换为缓冲图像。我认为你需要查看这个问题。在这里你可以获得将图标转换为缓冲图像的方法

于 2013-01-09T04:58:45.793 回答