2

我想知道如何将 java 中的 int 数组构造成缓冲图像。我知道你可以通过做

int[] srcpixels = ((DataBufferInt)in.getRaster().getDataBuffer()).getData();

但我不知道该怎么做。我需要这个来对缓冲图像应用鱼眼效果,我在这里找到了如何做http://popscan.blogspot.com/2012/04/fisheye-lens-equation-simple-fisheye.html但它只适用于整数数组。请帮忙,谢谢。

4

1 回答 1

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); 
于 2012-12-29T19:02:14.360 回答