Android:自定义屏蔽2个位图,一个在另一个之上

时间:2012-04-21 18:22:55

标签: android canvas bitmap draw paint

现在很容易。

我最终想要的是什么:

a busy cat

我希望在视图上叠加2个位图。与上面的位图相同的位图具有比下面的位图更高的亮度。

现在当用户在上位图上笔画(使用触摸事件(如画笔))时,我希望上位图的那些部分不可见。

对于那些熟悉adobe photoshop的人来说,或许这会更有意义: 我想在正在显示的图像上绘制一个遮罩,以便只有未遮罩的部分保持可见。但是面罩可以从硬度/尺寸可变的刷子上拉出来。

如何实现此功能?引导我进入我应该研究或提供示例代码的行。

此外,是否可以使用具有可变硬度的画笔在imageview上绘制笔画?我知道我可以在画布上绘制路径和drawArc,但我不知道如何实现不同的笔触/样式。

请原谅我,如果我没有说明我的问题,或者找不到类似的副本。

2 个答案:

答案 0 :(得分:0)

您可以使用FrameLayout将一个图像覆盖在Android上的其他图像上,并在Google上使用自定义蒙版搜索FingerPaint。

答案 1 :(得分:0)

我认为最好的方法是进行自己的离屏合成,然后使用ImageView或自定义交互的子类渲染合成图像。有关如何使用Porter-Duff传输模式进行此类合成的示例,请参阅this sample code