目前共有3篇帖子。 字体大小:较小 - 100% (默认)▼  内容转换:台灣正體▼
 
点击 回复
1446 2
【Flash】Flash中實現alpha半透明遮罩
一派掌门 二十级
1楼 发表于:2013-2-10 22:30

先來看一下使用「Alpha通道遮罩」的效果:可以看到文字上下的邊緣已經實現了半透明顯示。

一派掌门 二十级
2楼 发表于:2013-2-10 22:31
製作步驟::
alpha_mask

1.在舞台中製作一個影片剪輯,並在該影片剪輯內部製作想要的動畫效果。本例中製作了一個包含滾動文字動畫的影片剪輯,並將其在舞台中的實例命名為:text_mc

2.製作用於遮罩的影片剪輯(無需在時間軸上將其轉換為遮罩圖層),可以由外部導入的PNG圖片或者flash中繪製的半透明形狀轉化而成。本例從外部導入了一張半透明的PNG圖片,並轉換成影片剪輯。將其在舞台中的實例命名為:mask_mc

3.在時間軸上添加以下代碼: mask_mc.cacheAsBitmap=true;
text_mc.cacheAsBitmap=true;
text_mc.mask=mask_mc;

至此,alpha通道遮罩效果已經完成,可以通過「ctrl+enter」測試影片。

實現原理:
  通過AS腳本可設置顯示對象的遮罩,如要將A作為B的遮罩,則可以寫:B.mask=A
另外顯示對象具有一個位圖緩存屬性,即cacheAsBitmap屬性。開啟該屬性後(賦值true),就能在遮罩和被遮罩對象直接進行透明映射。

說明:以上腳本為ActionScript3.0,若使用ActionScript2.0實現此效果,將上面第三點中的 「text_mc.mask=mask_mc;」 改為 「text_mc.setMask(mask_mc);」 即可。
 
一派掌门 二十级
3楼 发表于:2013-2-10 22:31
 

回复帖子

内容:
用户名: 您目前是匿名发表
验证码:
(快捷键:Ctrl+Enter)
 

本帖信息

点击数:1446 回复数:2
评论数: ?
作者:巨大八爪鱼
最后回复:巨大八爪鱼
最后回复时间:2013-2-10 22:31
 
©2010-2025 Purasbar Ver2.0
除非另有声明,本站采用知识共享署名-相同方式共享 3.0 Unported许可协议进行许可。