Прозрачное изображение Фоновая проблема Android - PullRequest
0 голосов
/ 04 июля 2018

Прозрачный фон изображения преобразуется в черный цвет после размещения в галерее Android. Если я загружаю прозрачное изображение из галереи, то фоновое изображение показывает черный цвет

1 Ответ

0 голосов
/ 04 июля 2018
    bitmap = eraseBG(bitmap, -1);         // use for white background
    bitmap = eraseBG(bitmap, -16777216);  // use for black background


private static Bitmap eraseBG(Bitmap src, int color) {
    int width = src.getWidth();
    int height = src.getHeight();
    Bitmap b = src.copy(Config.ARGB_8888, true);
    b.setHasAlpha(true);

    int[] pixels = new int[width * height];
    src.getPixels(pixels, 0, width, 0, 0, width, height);

    for (int i = 0; i < width * height; i++) {
        if (pixels[i] == color) {
            pixels[i] = 0;
        }
    }

    b.setPixels(pixels, 0, width, 0, 0, width, height);

    return b;
}
...