从int数组创建Javafx图像

时间:2016-01-26 11:38:53

标签: javafx pixels pixelformat

我正在拼命尝试从具有整数值的像素数组创建一个Image。无论使用WritableImage还是Canvas,总是说PixelFormat是BYTE_RGB或BYTE_BGRA_PRE,所以我不得不使用字节数组。

有没有办法将PixelFormat更改为<IntBuffer>,还是忽略了另一个能够拥有PixelFormat<IntBuffer>的组件?

1 个答案:

答案 0 :(得分:4)

您尚未在int[]中描述像素数据的结构,但您可以按照

的方式执行某些操作。
int[] pixels = ... ;
WritableImage img = new WritableImage(width, height);
PixelWriter pw = img.getPixelWriter();
pw.setPixels(0, 0, width, height, PixelFormat.getIntArgbInstance(), pixels, 0, width);