2010-09-15 43 views
5

Kullanıcı tarafından çizilmiş şekiller içeren dinamik olarak oluşturulmuş bir BitmapData nesnesine sahibim. Daha sonra bu BitmapData nesnesini bir Bitmap nesnesi aracılığıyla bir MovieClip'e iliştiririm ve MovieClip'i başka bir MovieClip'e maske olarak ayarlar. Maske çalışır ancak BitmapData'nın tüm sınırlayıcı dikdörtgeni maske görevi yapar. Ancak şeffaf kısmı maskeden çıkarmak istiyorum, böylece sadece kullanıcı tarafından çizilmiş şekil maske olarak ayarlanabilir. Bunu nasıl başaracağını bilen var mı? Teşekkürler.Bir maske olarak saydam BitmapData nasıl kullanılır

cevap

8

Ben zaten (yorumlar bölümünde) çözdün bkz. Bir yanıt olarak gönderiyorum.
BOTH movieclip'i ve maskacheAsBitmap öğesini true olarak ayarlayın.

yani .:

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

Belki de Bitmap'in kendisini maske olarak kullanmayı denemelisiniz, eğer gösterilecek Bitmap'e ihtiyacınız varsa, şeffaf BitmapData kullanarak başka bir Bitmap oluşturmayı deneyin ve bunu maske olarak kullanın.

+0

maske olarak doğrudan Bitmap ayarı çalıştı. Şanssız! – Kayes

+0

BlendMode ile oynamaya çalıştınız mı (demek istediğim maskeyi unutmak)? – PatrickS

+4

Eh, ben yaptım! Hem bitmap'in (maske gibi davranacak) hem de (maskenin ayarlanacağı) MovieClip'in 'cacheAsBitmap' özelliğini 'true' olarak ayarlamalıyız. Aksi takdirde maske düzgün çalışmaz. – Kayes

2

Yapmanız gereken şey, bitmap'i önbelleğe almayı açmaktır.

myMc.cacheAsBitmap = true; yanlış hatırlamıyorsam ...

+0

oops Üzgünüz, farkettiğinizi fark ettiniz zaten – Daniel

+0

Yukarıda da belirtildiği gibi, bunu bitmap nesnesinde yapın. –

İlgili konular