[url]http://bbs.9ria.com/viewthread.php?tid=83364&extra=page%3D1%26amp%3Borderby%3Ddateline%26amp%3Bfilter%3D2592000[/url]
今天因为一些原因要学习flash嵌入字体的应用,看了网上很多文章,在经过多次尝试后终于成功,贴上了和大家一起分享。
在这里附上我的项目文件以及嵌入字体的fla文件,供大家参考,一个菜鸟,希望大家能指出我代码中不足的地方,有待改进的地方,或者告诉我更好的方法,谢谢 嵌入字体.rar (29.17 KB)
今天因为一些原因要学习flash嵌入字体的应用,看了网上很多文章,在经过多次尝试后终于成功,贴上了和大家一起分享。
package
{
import flash.display.Loader;
import flash.display.Sprite;
import flash.events.Event;
import flash.net.URLRequest;
import flash.text.Font;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFormat;
import flashx.textLayout.accessibility.TextAccImpl;
public class TestEmbedFont extends Sprite
{
private var _loader:Loader;
private var tx:TextField;
public function TestEmbedFont()
{
_loader = new Loader();
_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
_loader.load(new URLRequest("testFont.swf"));
}
private function completeHandler(evt:Event):void {
_loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, completeHandler);
var fontLibrary:Class=evt.target.applicationDomain.getDefinition("Font") as Class;
var font:Font = (new fontLibrary()) as Font;
Font.registerFont(fontLibrary);//注册字体
tx =new TextField();
tx.autoSize = TextFieldAutoSize.LEFT;
var tf:TextFormat=new TextFormat(font.fontName,20,0xFF0000);
tx.embedFonts = true;//如果设置为false,那么下面的“和”字也会显示
tx.text="确认和取消";//“和”不会显示,因为我只注册了“确认取消”这四个字
tx.setTextFormat(tf);
addChild(tx);
}
}
}
在这里附上我的项目文件以及嵌入字体的fla文件,供大家参考,一个菜鸟,希望大家能指出我代码中不足的地方,有待改进的地方,或者告诉我更好的方法,谢谢 嵌入字体.rar (29.17 KB)