实现文本字段透明效果的几种方法
2008-04-02 10:58:10来源:互联网 阅读 ()
Flash Player 6就开始支持文本字段(TextField)透明度属性(alpha),但是TextField._alpha只支持使用嵌入字体轮廓呈现的文本字段(TextField.embedFonts = true),对默认的设备字体呈现的文本字段无效。
下面先介绍TextField._alpha的实现方式,以下代码配置my_txt文本的透明度为20%。点击库->新建字体(New Font)选项,创建一字体元件(font symbol),然后配置该字体元件链接标识符为“ my font”。
var my_fmt:TextFormat = new TextFormat();
my_fmt.font = "my font";//'my font'为库中字体元件的链接标识符
this.createTextField("my_txt",this.getNextHighestDepth(), 10, 10, 100, 22);
my_txt.border = true;
my_txt.embedFonts = true;//使用嵌入字体轮廓呈现文本字段
my_txt.text = "Hello World";
my_txt.setTextFormat(my_fmt);
my_txt._alpha = 20;
以上方法用到了字体元件,使用起来不是很方便,而且由于发布时打包了字体导致swf文档相对比较大。想更多了解字体元件,参看这里Flash TechNotes: Using font symbols、Creating font symbols。
以下两种方法抛弃TextField._alpha,模拟实现文本字段的透明效果。
一、通过配置颜色模拟
function setAlpha(obj, alpha) {
var rgb = "0x" (255*(100-alpha)/100).toString(16);
rgb = rgb << 16 | rgb << 8 | rgb;
obj.backgroundColor |= rgb;
obj.borderColor |= rgb;
obj.textColor |= rgb;
}
二、通过创建一影片剪辑作文本的蒙层
function setAlpha(obj, alpha) {
var tmp_mc_name:String = obj._name "_alphamask_mc";
var tmp_mc:MovieClip = eval(tmp_mc_name);
if (!tmp_mc) {
tmp_mc = this.createEmptyMovieClip(tmp_mc_name,this.getNextHighestDepth());
tmp_mc.beginFill(0xFFFFFF);
tmp_mc.moveTo(0, 0);
tmp_mc.lineTo(20, 0);
tmp_mc.lineTo(20, 10);
tmp_mc.lineTo(0, 10);
tmp_mc.lineTo(0, 0);
tmp_mc.endFill();
}
tmp_mc._x = obj._x;
tmp_mc._y = obj._y;
tmp_mc._width = (obj.border) ? obj._width 1 : obj._width;
tmp_mc._height = (obj.border) ? obj._height 1 : obj._height;
tmp_mc._alpha = 100-alpha;
}
使用方法:
this.createTextField("my_txt", this.getNextHighestDepth(), 10, 10, 100, 22);
my_txt.text = "Hello World";
setAlpha(my_txt,50);//配置my_txt文本透明度为50%
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇: 用Flash制作简易的图片浏览器
下一篇: 加载外部文本文档的3种方法
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash