第一种方法是在css中嵌入中文字体,这种嵌入已经完成了注册
第二种也就是今天要提到的动态嵌入
一。创建自己的字体库:创建as类工程代码如下:(http://kevincao.com/app/font/)
package
{
import flash.display.Sprite;
public class myFontL extends Sprite
{
[Embed(systemFont="华文彩云", fontName="fwcwF", mimeType="application/x-font")]
public var fw : Class;
[Embed(systemFont="华文琥珀", fontName="fwhpF", mimeType="application/x-font")]
public var fwhp : Class;
}
}
编译后的swf文件就是我要用到的自定义字体库
二。将它添加到工程里面用swfloader加载他
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:SWFLoader id="loadFont" source="myFontL.swf" complete="loadF(event)"/>
<mx:Script>
<![CDATA[
private function loadF(e:Event):void
{
Font.registerFont(e.target.content["fw"]);//注册字体
Font.registerFont(e.target.content["fwhp"]);//注册字体
t.setStyle("fontFamily","fwhpF");
}
]]>
</mx:Script>
<mx:Text id="t" text="你好"/>
</mx:Application>
这就完成了字体的嵌入