Java 如何使用PixelReader';s getPixels()方法?
如何将javafx.scene.image.image转换为bgra格式的字节数组 我试着做: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,
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
);
接得好,但那不是问题,呵呵。不管怎样,我已经修好了,谢谢你的意见。