Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/402.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用PixelReader';s getPixels()方法?_Java_Javafx - Fatal编程技术网

Java 如何使用PixelReader';s getPixels()方法?

Java 如何使用PixelReader';s getPixels()方法?,java,javafx,Java,Javafx,如何将javafx.scene.image.image转换为bgra格式的字节数组 我试着做: PixelReader pixelReader = img.getPixelReader(); int width = (int)img.getWidth(); int height = (int)img.getHeight(); byte[] buffer = new byte[width * height * 4]; pixelReader.getPixels( 0,

如何将javafx.scene.image.image转换为bgra格式的字节数组

我试着做:

PixelReader pixelReader = img.getPixelReader();
int width = (int)img.getWidth();
int height = (int)img.getHeight();
byte[] buffer = new byte[width * height * 4];
pixelReader.getPixels(
        0,
        0,
        width,
        height,
        PixelFormat.getByteBgraInstance(),
        buffer,
        0,
        width
);

但是它没有工作,我的byte[]数组缓冲区仍然充满了零。

扫描线i。E宽度必须乘以4,i。e

PixelReader pixelReader = img.getPixelReader();
int width = (int)img.getWidth();
int height = (int)img.getHeight();
byte[] buffer = new byte[width * height * 4];
pixelReader.getPixels(
        0,
        0,
        width,
        height,
        PixelFormat.getByteBgraInstance(),
        buffer,
        0,
        width * 4
);

接得好,但那不是问题,呵呵。不管怎样,我已经修好了,谢谢你的意见。