与JavaFx上的BuffereImage(JavaAWT)等效

与JavaFx上的BuffereImage(JavaAWT)等效,javafx,bufferedimage,Javafx,Bufferedimage,我正在使用JavaFx,我正在寻找一种与AWT BuffereImage等效的。我发现我可以使用SwingFXUtils来使用JavaFx的awt BuffereImage,但我不想使用awt 事实上,我正在寻找一种结构来显示与颜色模型关联的像素表 有人知道JavaFx的一些等价物吗 非常感谢。在JavaFX中,最接近BuffereImage的是。它是javafx.scene.image.image的一个子类,在javafx2.2中引入 根据您的用例,javafx.scene.canvas.ca

我正在使用JavaFx,我正在寻找一种与AWT BuffereImage等效的。我发现我可以使用
SwingFXUtils
来使用JavaFx的
awt BuffereImage
,但我不想使用
awt

事实上,我正在寻找一种结构来显示与
颜色模型关联的像素表

有人知道JavaFx的一些等价物吗


非常感谢。

在JavaFX中,最接近
BuffereImage
的是。它是
javafx.scene.image.image
的一个子类,在javafx2.2中引入

根据您的用例,
javafx.scene.canvas.canvas
javafx.scene.canvas.GraphicsContext
(类似于
Graphics2D
Java2D)可能更适合您

要在
画布
节点上绘制并获取
可写图像
中的内容,请使用(改编自
画布
JavaDoc):


有关更多信息,请参阅JavaFX教程。

谢谢您的回答。我试过WritableImage,但性能不够。如果我想改变每个像素的颜色,我必须在每个像素上做一个“for”。非常慢。你知道还有别的方法吗?根据我(有限的)经验,WriteableImage表现得非常好。看看我的答案。但它可能不适合您的用例。也许
javafx.scene.canvas.canvas
javafx.scene.canvas.GraphicsContext
更符合您的要求?事实上,我有一个值表(表中的每个元素对应一个像素)。我想将每个值与颜色关联,然后显示表格。但是表的值每次都会改变。所以我必须实时改变每个像素的颜色。我想我已经尽可能准确地回答了你的问题。如果您需要其他方面的帮助,请发布一个新问题,描述您想要解决的问题,以及到目前为止您拥有的代码。在我看来,你最好的选择是
Canvas
,其他人可能会有其他/更好的想法。:-)谢谢,我将发布一个新问题以了解更多细节。
// Create canvas
Canvas canvas = new Canvas(250, 250);
GraphicsContext gc = canvas.getGraphicsContext2D();

// Paint on it
gc.setFill(Color.BLUE);
gc.fillRect(75, 75, 100, 100);

// NOTE: The canvas must be part of a Scene for the following to work properly, omitted for brevity

// Obtain a snapshot of the canvas
WritableImage image = canvas.snapshot(null, null);