使用ColorMatrixColorFilter过滤alpha

时间:2014-03-20 09:21:09

标签: android colormatrix

我想用ColorMatrixColorFilter过滤颜色。 我已经有一个代码运行良好,但...我不适用于alpha。

static private ColorMatrixColorFilter getFilter(int backgroundColor, int foregroundColor)
{
    float rB = (float) (Color.red(backgroundColor)) / 255;
    float gB = (float) (Color.green(backgroundColor)) / 255;
    float bB = (float) (Color.blue(backgroundColor)) / 255;

    float rF = (float) (Color.red(foregroundColor)) / 255;
    float gF = (float) (Color.green(foregroundColor)) / 255;
    float bF = (float) (Color.blue(foregroundColor)) / 255;

    float[] colorTransform = { rB - rF, 0, 0, 0, rF * 255, 0, gB - gF, 0, 0, gF * 255, 0, 0, bB - bF, 0, bF * 255, 0, 0, 0, 1, 0 };

    ColorMatrix colorMatrix = new ColorMatrix(colorTransform);

    return new ColorMatrixColorFilter(colorMatrix);

}

我该如何为alpha做? 因为在这里,alpha总是“1”。

感谢。

0 个答案:

没有答案