在Android中将RGB值的数组转换为图像

时间:2015-12-25 20:35:26

标签: java android rgb android-bitmap

我已经通过BitmapFactory.decodeStream将JPEG图像转换为RGB颜色值数组,此代码为:

picw = selectedImage.getWidth();
pich = selectedImage.getHeight();

int[] pix = new int[picw * pich];

selectedImage.getPixels(pix, 0, picw, 0, 0, picw, pich);
int R, G, B;

for (int y = 0; y < pich; y++) {
        for (int x = 0; x < picw; x++) {
            int index = y * picw + x;
            R = (pix[index] >> 16) & 0xff;
            G = (pix[index] >> 8) & 0xff;
            B = pix[index] & 0xff;
            pix[index] = (R << 16) | (G << 8) | B;
        }
    }

现在,如何将此数组转换回图像?

1 个答案:

答案 0 :(得分:3)

您可以使用静态方法Bitmap.createBitmap。 E.g。

Bitmap bmp = Bitmap.createBitmap(pix, picw, pich, Bitmap.Config.ARGB_8888)