我想知道如何将java中的int数组构造成缓冲图像。我知道你可以通过
在java中获取一个int数组int[] srcpixels = ((DataBufferInt)in.getRaster().getDataBuffer()).getData();
但我不知道如何以另一种方式做到这一点。我需要这个将fisheye效果应用于缓冲图像,我在这里找到了如何做http://popscan.blogspot.com/2012/04/fisheye-lens-equation-simple-fisheye.html但它只适用于int数组。请帮助,谢谢。
答案 0 :(得分:2)
使用WritableRaster:
final int w = bitmap.getWidth();
final int h = bitmap.getHeight();
final WritableRaster wr = bitmap.getData();
int []data = wr.getPixels(0, 0, w, h, data);
// do processing here
wr.setPixels(0, 0, w, h, data);