如何使图像在定义区域外透明?

时间:2012-05-15 16:59:46

标签: android image android-layout surfaceview

我试图创建一个在指定区域后图像不可见的效果。 例如:像一只洞里的兔子......当它钻到洞下时,它的身体不应该慢慢看到..

3 个答案:

答案 0 :(得分:2)

如果使用透明区域对多个图像进行分层,则可以隐藏图像区域

Uberbunnydrawing

图像左侧显示兔子,右侧是侧面视图。你需要三个图像(棕色,红色和灰色),不是棕色/红色/灰色的部分是透明的。

答案 1 :(得分:1)

使用选择性透明度合成图像有两种不同的方法:您可以使用zapl答案中描述的Alpha通道,或者您可以使用PathRegion剪切每个图层的图形 - 在绘制Canvas时,您可以使用clipxxx来电。

答案 2 :(得分:1)

无论如何感谢@zapl和lawrence的提示..我使用剪辑矩形作为画布,它工作得很完美..示例代码如下..

     c.clipRect(0, 0, 150, 150);
      c.clipRect(0, 70, 100, 150, Region.Op.DIFFERENCE);
      c.drawBitmap(bm, 20, y, null);