Java 将RGB整数数组转换为位图

Java 将RGB整数数组转换为位图,java,bitmap,Java,Bitmap,我们知道,使用下面的代码可以得到位图图像的rgb: BufferedImage img = ImageIO.read(new File(bitmapURL)); int[] pixels = img.getRGB(0, 0, img.getWidth(), img.getHeight(), null, 0, img.getWidth()); 在执行了这部分代码之后,我们得到了一个整数数组,它包含4个字节,表示任何像素的Alpha、红色、绿色和蓝色。我想知道,我们如何转换整数数组,比如int[]

我们知道,使用下面的代码可以得到位图图像的rgb:

BufferedImage img = ImageIO.read(new File(bitmapURL));
int[] pixels = img.getRGB(0, 0, img.getWidth(), img.getHeight(), null, 0, img.getWidth());
在执行了这部分代码之后,我们得到了一个整数数组,它包含4个字节,表示任何像素的Alpha、红色、绿色和蓝色。我想知道,我们如何转换整数数组,比如int[]myPixels;要位图吗?谁能帮我弄到这个吗


提前感谢:

您可以直接使用:


BufferedImage im = new BufferedImage(width, height);

for (int i = 0; i < width; i++) {
  for (int j = 0; j < height; j++) {
    im.setRGB(...);
  }
}
image.setRGB(0, 0, width, height, pixels, 0, width);

您可以直接使用此选项:

image.setRGB(0, 0, width, height, pixels, 0, width);

请注意,我们使用的是一维阵列,而不是二维阵列!那么,如何将其转换为位图呢?是的,您需要为正在设置的像素计算数组中的正确偏移量,然后只需使用forint i=0更改代码;i<宽度*高度;i++{im.setRGB…:}请注意,我们有一个1D数组,而不是2D数组!那么,如何将其转换为位图呢?是的,您需要为正在设置的像素计算数组中的正确偏移量,然后只需使用forint i=0更改代码;i<宽度*高度;i++{im.setRGB…:}