/*说明:
1.新建fla,名为font,点击菜单栏+文本+字体嵌入+选择字体+为ActionScript导出,设置类名为"MyFont",
然后导出为font.swf
2.新建fla,名为sample,绑定文档类(代码如下),嵌入字体使用成功*/
package {
import flash.display.Loader;
import flash.display.Sprite;
import flash.events.Event;
import flash.net.URLRequest;
import flash.system.ApplicationDomain;
import flash.system.LoaderContext;
import flash.text.Font;
import flash.text.TextField;
import flash.text.TextFormat;
import flash.utils.getDefinitionByName;
public class FontTest extends Sprite {
private var loader:Loader;
public function FontTest() {
loader=new Loader();
loader.load(new URLRequest("font.swf"));
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,onLoadComplete);
}
private function onLoadComplete(e:Event):void {
var fontClass:Class=e.target.applicationDomain.getDefinition("MyFont") as Class;
Font.registerFont(fontClass);//注册字体类
var txt:TextField=new TextField();//创建文本
txt.embedFonts=true;//确定嵌入字体
var font:Font=new fontClass()//调用库中的字体MyFont
var tf:TextFormat=new TextFormat;//设置字体样式
tf.size=12;
tf.font=font.fontName;//保存嵌入字体的名称
txt.text="微软雅黑";
txt.setTextFormat(tf);//应用文字样式
addChild(txt);
}
}
}