zoukankan      html  css  js  c++  java
  • 黑白效果函数

    // 黑白效果函数
    public static Bitmap changeToGray(Bitmap bitmap,boolean r, boolean g, boolean b) {

    int width, height;
    width = bitmap.getWidth();
    height = bitmap.getHeight();

    Bitmap grayBitmap = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565);
    Canvas canvas = new Canvas(grayBitmap);
    Paint paint = new Paint();
    paint.setAntiAlias(true); // 设置抗锯齿

    //方法一
    ColorMatrix colorMatrix = new ColorMatrix();
    colorMatrix.setSaturation(0);
    /* 方法二
    * ColorMatrix colorMatrix = new ColorMatrix();
    float[] m = colorMatrix.getArray();
    setColorFilterMatrix(m, r, g, b);*/

    ColorMatrixColorFilter filter = new ColorMatrixColorFilter(colorMatrix);

    paint.setColorFilter(filter);
    canvas.drawBitmap(bitmap, 0, 0, paint);

    return grayBitmap;
    }

    public static void setColorFilterMatrix(float[] m, boolean r, boolean g, boolean b) {
    final float R = 0.213f;
    final float G = 0.715f;
    final float B = 0.072f;

    m[0] = 0;
    m[6] = 0;
    m[12] = 0;

    if (r) {
    m[0] = R; m[1] = G; m[2] = B;
    }
    if (g) {
    m[5] = R; m[6] = G; m[7] = B;
    }
    if (b) {
    m[10] = R; m[11] = G; m[12] = B;
    }
    }

  • 相关阅读:
    python RabbitMQ队列/redis
    python 协程
    Python 线程
    Python Socket网络编程
    Python 面向对象编程进阶
    Python 面向对象
    python 模块
    Python 迭代器&生成器&装饰器
    Python 集合操作
    Java多态--构造方法的内部方法多态
  • 原文地址:https://www.cnblogs.com/clarence/p/3837425.html
Copyright © 2011-2022 走看看