使用颜色将图像绘制到画布上

4

我使用canvas.drawImageRect将一张图片绘制到画布上。

这张图片本身是透明的白色,但我想让它变成另一种颜色。我尝试创建一个颜色为黄色的Paint,但这并没有使图片变成黄色。

我猜应该有方法可以实现这个需求,有谁能告诉我吗?

1个回答

10
创建一个画笔并添加ColorFilter
ColorFilter.mode(Color color, BlendMode blendMode)创建一个颜色过滤器,应用作为第二个参数给出的混合模式。源颜色是作为第一个参数给出的颜色,目标颜色是正在合成的图层中的颜色。
我认为你想要使用srcATop混合模式。

2
谢谢您的建议!我尝试了一下ColorFilter,并使用srcATop BlendMode使其按照我想要的方式工作!现在我的图像是黄色的。您能否在您的答案中将destOut更改为srcATop?那么我就可以接受它 :) - Eric
1
谢谢。已更正混合模式。 - Richard Heap

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接