如何将 BufferedImage 转换为 Image?

dan*_*eys 1 java bufferedimage image

我正在尝试拆分一副纸牌的图像并将单张卡片存储到图像中。

Image image;
BufferedImage deck = ImageIO.read( new URL( "http://www.jfitz.com/cards/classic-playing-cards.png" ) );
image = deck.getSubimage( x, y, width, height );
Run Code Online (Sandbox Code Playgroud)

不兼容的类型:BufferedImage 无法转换为 Image

我看过的所有地方都说 BufferedImage一个图像,这个问题不应该存在。(注意:如果这看起来像一个类分配,它是,但我们应该做的就是从预定的目录加载图像。我试图通过使用 URL 来更有趣。 )

编辑 04/09/2014
我一直在使用不同的导入,所以我想我真正想问的问题是如何将 java.awt.image.BufferedImage 转换为 java.scene.image.Image。感谢你目前的帮助!

dan*_*eys 6

一旦我知道要问什么问题,谷歌就很快回答了这个问题。我在这个博客上找到了一个快速修复。

BufferedImage tempCard = deck.getSubimage( x, y, width, height );
Image card = SwingFXUtils.toFXImage(tempCard, null );
Run Code Online (Sandbox Code Playgroud)

试过了,效果很好!