黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

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

系統(tǒng) 2376 0
AS2:
因?yàn)樽罱鲆粋€(gè)項(xiàng)目,涉及到要輸入文本,F(xiàn)lash的輸入文本默認(rèn)下是只能顯示設(shè)備字體。連系統(tǒng)內(nèi)的字體都不能設(shè)置,必須要嵌入才能輸入。
  as2的時(shí)代,可以用加載字體庫(kù)的方式來(lái)解決,Adobe官方的解釋太煩瑣了,其實(shí)總結(jié)起來(lái)就是一個(gè)替換字體的過(guò)程,把外部庫(kù)的自定義字體替換當(dāng)前的輸入字體。
  例如如下:
  如果是as2的話(huà),新建一個(gè)Fla文件share.fla,然后在庫(kù)里新建一個(gè)字體文件,然后設(shè)置他的標(biāo)識(shí)為MyFont,隨便選擇系統(tǒng)內(nèi)的一種字體,然后選擇linkage里的導(dǎo)出as,導(dǎo)出runtime sharing,導(dǎo)出第一幀,然后在url處填寫(xiě)share.swf,然后編譯成share.swf
Flash cs4 cs5 as3 as2嵌入中文字體 方法
  然后新建主文件main.fla,同樣在庫(kù)里新建一個(gè)字體文件,然后設(shè)置他的url為share.swf,這樣他就共享了share.swf里的字體文件,可以在場(chǎng)景里放一個(gè)textinput文件來(lái)做測(cè)試
Flash cs4 cs5 as3 as2嵌入中文字體 方法

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

  下面我們要說(shuō)的是如何用程序來(lái)實(shí)現(xiàn)as3的中文動(dòng)態(tài)嵌入加載,查了網(wǎng)上的一些資料,老外的做法是新建一個(gè)類(lèi),然后在類(lèi)里直接embed這個(gè)font,然后最通過(guò)加載這個(gè)share.swf,然后反射出這個(gè)Font類(lèi),再注冊(cè)一次使用,經(jīng)試驗(yàn),發(fā)現(xiàn)這樣的做法英文是可以的,如果是中文,在編譯share.swf的時(shí)候會(huì)報(bào)錯(cuò)
  嵌入字體庫(kù)文件類(lèi)

  調(diào)用字體庫(kù)文件類(lèi)

復(fù)制內(nèi)容到剪貼板

  這個(gè)是老外的做法,試驗(yàn)過(guò)后發(fā)現(xiàn)英文是可以沒(méi)有問(wèn)題的,但是如果是比較大的中文ttf,在嵌入字體庫(kù)文件類(lèi)那處就會(huì)有問(wèn)題,mxmlc編譯的時(shí)候會(huì)報(bào)錯(cuò)
  這樣我們的做法是,在Flash cs3里來(lái)做字體共享庫(kù),同樣在庫(kù)里新建一個(gè)字體
Flash cs4 cs5 as3 as2嵌入中文字體 方法
  然后在主文件里加載,然后用反射的方法注冊(cè),再使用
復(fù)制內(nèi)容到剪貼板
代碼:
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);
}

復(fù)制內(nèi)容到剪貼板
代碼:
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;

  }

}

相關(guān)鏈接地址 : http://hi.baidu.com/sl19880127sl/blog/item/b79242086e3f11dc63d986a6.html

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


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

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

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦?。。?/p>

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論