将图像图标转换为缓冲图像

2022-09-04 23:58:55

我一直在尝试将a转换为...我没有运气。ImageIconBufferedImage

我有一个预先存在的ImageIcon,需要将其转换为缓冲图像,以用于存在的大量BufferedImage操作。

我已经找到了一些方法,但它们都是CPU密集型的。


答案 1

有什么问题:

BufferedImage bi = new BufferedImage(
    icon.getIconWidth(),
    icon.getIconHeight(),
    BufferedImage.TYPE_INT_RGB);
Graphics g = bi.createGraphics();
// paint the Icon to the BufferedImage.
icon.paintIcon(null, g, 0,0);
g.dispose();

答案 2

请参阅图像图标图像缓冲图像

ImageIcon yourImage;
Image image = yourImage.getImage();
BufferedImage buffered = (BufferedImage) image;

推荐