欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Flash cs4 cs5 as3 as2嵌入中文字體 方法

系統 2083 0
AS2:
因為最近要做一個項目,涉及到要輸入文本,Flash的輸入文本默認下是只能顯示設備字體。連系統內的字體都不能設置,必須要嵌入才能輸入。
  as2的時代,可以用加載字體庫的方式來解決,Adobe官方的解釋太煩瑣了,其實總結起來就是一個替換字體的過程,把外部庫的自定義字體替換當前的輸入字體。
  例如如下:
  如果是as2的話,新建一個Fla文件share.fla,然后在庫里新建一個字體文件,然后設置他的標識為MyFont,隨便選擇系統內的一種字體,然后選擇linkage里的導出as,導出runtime sharing,導出第一幀,然后在url處填寫share.swf,然后編譯成share.swf
Flash cs4 cs5 as3 as2嵌入中文字體 方法
  然后新建主文件main.fla,同樣在庫里新建一個字體文件,然后設置他的url為share.swf,這樣他就共享了share.swf里的字體文件,可以在場景里放一個textinput文件來做測試
Flash cs4 cs5 as3 as2嵌入中文字體 方法

AS3:
  這樣嵌入字體的工作就完成了,as3文件不同的地方在于沒有標識這個東西了,那我們在aa.swf(就是上面的share.swf)里設置Classname為自定義的字體名字zhr_font,然后在Main文件里也設置成zhr_font的ClassName
Flash cs4 cs5 as3 as2嵌入中文字體 方法
Flash cs4 cs5 as3 as2嵌入中文字體 方法

  下面我們要說的是如何用程序來實現as3的中文動態嵌入加載,查了網上的一些資料,老外的做法是新建一個類,然后在類里直接embed這個font,然后最通過加載這個share.swf,然后反射出這個Font類,再注冊一次使用,經試驗,發現這樣的做法英文是可以的,如果是中文,在編譯share.swf的時候會報錯
  嵌入字體庫文件類

  調用字體庫文件類

復制內容到剪貼板

  這個是老外的做法,試驗過后發現英文是可以沒有問題的,但是如果是比較大的中文ttf,在嵌入字體庫文件類那處就會有問題,mxmlc編譯的時候會報錯
  這樣我們的做法是,在Flash cs3里來做字體共享庫,同樣在庫里新建一個字體
Flash cs4 cs5 as3 as2嵌入中文字體 方法
  然后在主文件里加載,然后用反射的方法注冊,再使用
復制內容到剪貼板
代碼:
var loader:Loader=new Loader;
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,completeHandler);
loader.load(new URLRequest(”shared.swf”));
function completeHandler(event:Event):void {
var fontLibrary:Class=event.target.applicationDomain.getDefinition(”zhr_Font”) as Class;
trace(fontLibrary);
Font.registerFont(fontLibrary);
test();
}

function test() {
var _embeddedFonts:Array = new Array();
_embeddedFonts = Font.enumerateFonts(false);
trace(_embeddedFonts[0].fontName);
//trace(_embeddedFonts.length);
//var tx:TextField=new TextField();
//tx.type=”input”;
tx.embedFonts=true;
//tx.defaultTextFormat=new TextFormat(”zhr_Font”,20,0xFF0000);
var tf=new TextFormat(_embeddedFonts[0].fontName,20,0xFF0000);
//tx.embedFonts = true;
//tx.antiAliasType = AntiAliasType.ADVANCED;
tx.text=”你好”;
tx.setTextFormat(tf);
addChild(tx);
}
代碼:
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
loader.load(new URLRequest(”fontlibrary.swf”));

private function completeHandler(event:Event):void {
  var FontLibrary:Class = event.target.applicationDomain.getDefinition(”FontLibrary”) as Class;
  Font.registerFont(FontLibrary.BankGothicFont);
  var tf:TextField = new TextField();
  tf.defaultTextFormat = new TextFormat(”emBank Gothic”, 12, 0);
  tf.embedFonts = true;
  tf.rotation = 15; // to demonstrate the embed worked
  tf.text = “blah blah blahnblah blah blahnblah blah blah “;
  addChild(tf);
}

復制內容到剪貼板
代碼:
package {

  import flash.display.Sprite;

  public class FontLibrary extends Sprite {

    [Embed(systemFont=’Bank Gothic’, fontName=’emBank Gothic’, mimeType=’application/x-font’)]
    public static var BankGothicFont:Class;

  }

}

相關鏈接地址 : http://hi.baidu.com/sl19880127sl/blog/item/b79242086e3f11dc63d986a6.html

Flash cs4 cs5 as3 as2嵌入中文字體 方法


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 国产亚洲精品久久久久久久软件 | 色综合天天综合网国产成人网 | 日韩精品久久一区二区三区 | 亚洲成人网在线观看 | 免费一级做a爰片性色毛片 狠狠色欧美亚洲狠狠色www | 亚洲国产精品久久久 | 成年人在线免费 | 日产中文字乱码卡一卡二视频 | 国产亚洲视频免费播放 | aiai888永久免费视频 | 中文字幕国产精品 | 毛片一级在线 | 亚洲精品一区二区三区在线观看 | 黄色网址在线视频 | 一级片| 四虎在线视频 | 亚洲韩精品欧美一区二区三区 | 日韩色小说 | 国产日韩欧美久久久 | 亚洲精品视频在线 | 成人在线视频在线观看 | 亚洲精品人人 | 台湾三级无遮挡在线播放 | 亚洲综合在线视频 | 天天擦天天干 | 在线一区视频 | 国产精品久久久久久久久久 | 91免费片| 视频一区二区三区免费观看 | 91在线免费观看 | 欧美性猛交一区二区三区精品 | 国产精品久久久爽爽爽麻豆色哟哟 | 99国产精品自拍 | 日本高清精品 | 国产精品视频一区二区三区不卡 | 性夜影院爽黄e爽在线观看 苏晓晖个人简介军衔 | 香蕉久草视频 | 免费一二区 | 亚洲香蕉久久一区二区三区四区 | 亚洲视频在线看 | 欧美久草在线 |