1 var sp:Sprite = new Sprite; //容器,放置稍后的渐变背景和文本框 2 3 this.addChild(sp); //容器添加到舞台 4 5 6 7 var maskMC:MovieClip = new Maska; //创建一个渐变地图,这里是库中一个链接名为Maska的影片剪辑 8 9 maskMC.cacheAsBitmap = true; //此属性必须 10 11 sp.addChild(maskMC); //添加到容器sp 12 13 14 15 var tf:TextFormat = new TextFormat(); //文本Format属性,可以不添加,随意,这里用做改变字体大小和加粗属性 16 17 tf.size = 14; 18 19 tf.bold = true; 20 21 22 23 var txt:TextField = new TextField; //创建个文本 24 25 txt.width = 130; 26 27 txt.height = 80; 28 29 txt.defaultTextFormat = tf; 30 31 txt.multiline = true; 32 33 txt.wordWrap = true; 34 35 txt.cacheAsBitmap = true; //此属性必须 36 37 sp.addChild(txt); //文本添加进容器sp 38 39 40 41 42 maskMC.mask = txt; //重要!将背景的遮罩设为名为txt的文本框 43 44 sp.filters = [new GlowFilter(0x00ff00,1,2,2)]; //增加描边,注意这是对文本和遮罩所在的容器sp增加滤镜 45 46 txt.text = "编程人生taotao5453编程人生taotao5453编程人生taotao5453编程人生taotao5453编程人生taotao5453编程人生taotao5453编程人生taotao5453";
注意:
1、本例的渐变元素是一个movieclip影片剪辑,他也可以是一个图片,只需要做BitmapData和Bitmap操作一下添加到想添加的位置即可;
2、渐变元素和文本框的深度索引是随意的,也就是说文本框放在渐变下面和放在渐变上面,在使用maskMC.mask = txt;后效果都是一样的;
3、关于描边,使用了上面方式制作遮罩后,单独对textField添加滤镜制作描边是无效的,需要对文本框和渐变底色的外层容器(即代码中的名为sp的Sprite)添加滤镜才能实现描边。
转载出处: http://blog.csdn.net/skiing_886/article/details/8093235