2010-09-15 42 views
5

我有一个动态创建的包含用户绘制形状的BitmapData对象。然后,我通过Bitmap对象将该BitmapData对象附加到MovieClip,并将该MovieClip设置为另一个MovieClip的掩码。该掩码工作,但BitmapData的整个边界矩形充当掩码。但我想排除掩模中的透明部分,因此只能将用户绘制的形状设置为掩模。任何人都可以告诉如何做到这一点?谢谢。如何使用透明BitmapData作为掩码

回答

8

我看你已经解决了这个问题(在评论部分)。 发布它作为答案。
设置BOTH动画片段并将cacheAsBitmap设置为true。

即:

movieclip.cacheAsBitmap = true; 
movieclip_mask.cacheAsBitmap = true; 
0

也许你应该尝试使用位图本身作为掩码,如果你需要该位图显示,请尝试使用透明BitmapData创建另一个位图并将其用作掩码。

+0

试图直接设置位图作为掩模。没有运气! – Kayes 2010-09-15 09:27:53

+0

您是否尝试过使用BlendMode(忘记我的意思)? – PatrickS 2010-09-15 09:32:14

+4

嗯,我已经做到了!我们必须将Bitmap(将用作掩码)和MovieClip(用于设置掩码)的'cacheAsBitmap'属性设置为'true'。否则,面罩将无法正常工作。 – Kayes 2010-09-15 11:03:44

2

你需要做的事是打开位图缓存。

如果我没有记错

myMc.cacheAsBitmap = true; ...

+0

哎呀对不起,只是注意到你已经知道了它已经知道了 – Daniel 2010-09-15 14:00:38

+0

如上所述,在位图对象上也是这样做的。 – 2011-08-29 10:28:03