Конвертировать массив int в bufferedImage в Java
Мне было интересно, как я могу построить массив int в Java в буферизованном изображении. Я знаю, что вы можете получить массив INT в Java, выполнив
int[] srcpixels = ((DataBufferInt)in.getRaster().getDataBuffer()).getData();
но я не знаю, как сделать это по-другому. Мне нужно это, чтобы применить эффект "рыбий глаз" к буферизованному изображению, которое я узнал, как это сделать здесь http://popscan.blogspot.com/2012/04/fisheye-lens-equation-simple-fisheye.html но он работает только с массивы int. Пожалуйста, помогите, спасибо.
1 ответ
Используйте 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);