【发布时间】:2011-03-02 02:51:05
【问题描述】:
首先让我警告您,我是“老派”,即代码在我的时间轴上,并且唯一使用的类是当我向 Script1.swf 添加几种新字体时自动创建的那些,这是我用于嵌入字体的电影剪辑。
在名为 Round.fla 的主影片剪辑的第一帧上,我使用加载器对象加载了包含字体的 Script1.swf。我正在使用显示 Script1_lb.swf 已加载的跟踪语句。
我正在使用带有movieclip图标(示例字体的jpg图片)的列表框(script1_lb),数据是字体类的名称,如下所示:
script1_lb.dataProvider.addItem( {icon:akaDora_mc, data:"akaDora"} );
我想将字体应用到舞台上已经存在的文本字段(design_mc.info_txt),所以这是我使用的代码:
import flash.text.Font;
import flash.text.TextField;
var tff:TextFormat = new TextFormat();
var font:Font=new Font();
script1_lb.addEventListener(Event.CHANGE,getFont);
function getFont(event:Event):void {
tff.font = script1_lb.selectedItem.data;
MovieClip(parent).design_mc.info_txt.embedFonts = true;
MovieClip(parent).design_mc.info_txt.setTextFormat(tff.font);
}
当尝试应用字体 akaDora 时,这是我得到的错误:
TypeError:错误 #1034:类型强制失败:无法将“akaDora”转换为 flash.text.TextFormat。
我已经看了好几个小时并阅读了帮助文件,但似乎看不出我可能遗漏了什么。有人可以帮忙吗?谢谢
【问题讨论】:
标签: flash actionscript-3 fonts