将alpha蒙版位图绘制为特定颜色

时间:2014-01-08 17:50:46

标签: java android android-canvas

如何将alpha蒙版图像/ Bitmap绘制为特定颜色。我试图将图像上的alpha(白色)乘以一种颜色并绘制它。

几个面具的例子:

Simple

Translucent

我希望黑色是透明的,而alpha / white是颜色。

2 个答案:

答案 0 :(得分:0)

黑色= 0x00ffffff 白= 0xffffffff

ARGB的32位值的前两个十六进制字符决定了你的alpha

    final int FULL_ALPHA = 0xFF000000;

    int pixel = FULL_ALPHA + some_value;
    Paint p = new Paint();
    p.setColor(pixel);
    c.drawCircle(width, height, radius, p);

答案 1 :(得分:0)

我想我可能找到了答案,感谢@petey。

Paint colorMultiplier = new Paint();
colorMultiplier.setColorFilter(new PorterDuffFilter(Color.parseColor("#123456"), PorterDuff.Mode.MULTIPLY));
canvas.drawBitmap(alphaMask, 0, 0, colorMultiplier);