change Bitmap Color - Android Graphics

Android examples for Graphics:Bitmap Color

Description

change Bitmap Color

Demo Code

/*//w ww . j  a va2s .com
 Copyright (C) 2015 R?mi Jouannet <remijouannet@gmail.com>
 This file is part of get10.
 get10 is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation, either version 3 of the License, or
 (at your option) any later version.
 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.
 You should have received a copy of the GNU General Public License
 along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
//package com.java2s;

import android.graphics.Bitmap;

public class Main {
    public static Bitmap changeColor(Bitmap bitmap, int oldColor,
            int newColor) {
        if (bitmap == null) {
            return bitmap;
        }

        int width = bitmap.getWidth();
        int height = bitmap.getHeight();
        int[] pixels = new int[width * height];
        bitmap.getPixels(pixels, 0, width, 0, 0, width, height);
        for (int x = 0; x < pixels.length; ++x) {
            pixels[x] = (pixels[x] == oldColor) ? newColor : pixels[x];
        }
        Bitmap newBitmap = Bitmap.createBitmap(width, height,
                bitmap.getConfig());
        newBitmap.setPixels(pixels, 0, width, 0, 0, width, height);
        return newBitmap;
    }
}

Related Tutorials