as3利用bitmapdata实现渐变遮罩

 

今天在工作中,需要用到对文字进行渐变透明遮罩,就是遮罩层由透明到不透明,用flash估计大家都会,用代码有点小麻烦,平时没用代码画过渐变图,就查了一下相关帮助

首先创建一个渐变的图,由垂直透明到不透明

 

var myShape:Shape = new Shape();
var gradientBoxMatrix:Matrix = new Matrix();
gradientBoxMatrix.createGradientBox(
200200Math.PI*0.500);//Math.PI*0.5是设置渐变转动90度为垂直(默认为水平,也可设任意角度)
//参数填充类型,颜色数组,alpha数组,渐变比率
myShape.graphics.beginGradientFill(GradientType.LINEAR, [
0xFF00000x00FF00], [01], [0128], gradientBoxMatrix);
myShape.graphics.drawRect(
00200200);
myShape.graphics.endFill();

 然后就是把此对象设为遮罩层即可

 

var spt:Sprite=new Sprite();
spt.beginFill(
0xFFCCCC);
spt.graphics.drawRect(
00200200);
spt.graphics.endFill();

//设为遮罩层
spt.mask=myShape;

 

 这时还没完成,如果这样是看不到效果的,必须得再设置这两个对象的cacheAsBitmap属性为true,才可以

 

myShape.cacheAsBitmap=true;
spt.cacheAsBitmap
=true;

posted on 2011-11-03 13:13  AS3.0  阅读(420)  评论(0)    收藏  举报

导航