Что-то в этом духе должно помочь (измените тип изображения, размеры и массив пикселей соответственно):
BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
WritableRaster raster = image.getRaster();
for ( i=0; i<width; i++ ) {
for ( j=0; j<height; j++ ) {
int[] colorArray = getColorForPixel(pixels[i][j]);
raster.setPixel(i, j, colorArray);
}
}
ImageIO.write(image, "gif", new File("CardImage"));
'getColorForPixel' потребуется вернуть массив, представляющий цвет для этого пикселя. В этом случае, используя RGB, colorArray будет иметь три целых числа [красный] [зеленый] [синий].
Соответствующий javadoc: WritableRaster , BufferedImage и ImageIO .