因为没有服务器,而且flash版的字体还是调用客户端的字体,因而不得不把字体集成到flash里面,而大大地增加了Flash的大小,使得客户端加载起来速度非常慢,正因为如此我才放弃了这种做法。
因为最近要做一个项目,涉及到要输入文本,Flash的输入文本默认下是只能显示设备字体。连系统内的字体都不能设置,必须要嵌入才能输入。

as2的时代,可以用加载字体库的方式来解决,Adobe官方的解释太烦琐了,其实总结起来就是一个替换字体的过程,把外部库的自定义字体替换当前的输入字体。

例如如下:

如果是as2的话,新建一个Fla文件share.fla,然后在库里新建一个字体文件,然后设置他的标识为MyFont,随便选择系统内的一种字体,然后选择linkage里的导出as,导出runtime sharing,导出第一帧,然后在url处填写share.swf,然后编译成share.swf

2008669392552768.jpg (25.37 KB)

2008-8-26 13:11

然后新建主文件main.fla,同样在库里新建一个字体文件,然后设置他的url为share.swf,这样他就共享了share.swf里的字体文件,可以在场景里放一个textinput文件来做测试

2008669392623573.jpg (24.44 KB)

2008-8-26 13:11

这样嵌入字体的工作就完成了,as3文件不同的地方在于没有标识这个东西了,那我们在aa.swf(就是上面的share.swf)里设置Classname为自定义的字体名字zhr_font,然后在Main文件里也设置成zhr_font的ClassName

2008669392658878.jpg (25.92 KB)

2008-8-26 13:11

2008669392669950.jpg (23.13 KB)

2008-8-26 13:11

下面我们要说的是如何用程序来实现as3的中文动态嵌入加载,查了网上的一些资料,老外的做法是新建一个类,然后在类里直接embed这个font,然后最通过加载这个share.swf,然后反射出这个Font类,再注册一次使用,经试验,发现这样的做法英文是可以的,如果是中文,在编译share.swf的时候会报错

嵌入字体库文件类

{

flash.display.Sprite;

FontLibrary Sprite {

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

}

}

调用字体库文件类

loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
loader.load(new URLRequest(”fontlibrary.swf”));

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

这个是老外的做法,试验过后发现英文是可以没有问题的,但是如果是比较大的中文ttf,在嵌入字体库文件类那处就会有问题,mxmlc编译的时候会报错

这样我们的做法是,在Flash cs3里来做字体共享库,同样在库里新建一个字体

2008669392614449.jpg (17.61 KB)

2008-8-26 13:11

然后在主文件里加载,然后用反射的方法注册,再使用

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);
}

常用文字库
  1. `1234567890-=[]/;',./~!@#$%^&*()_+{}:"<>?qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM二三四六七零本日所下时的年区小可一图月全中我上个等台过人请版新方回第会元者都大比内用名水没即在件与和后太走前分买多各网加次带几你号单社为他最由有是爱先部更别性帖表成化男不数及了点行岁自服到将高您集专间码国入文界或之对率金馆以要系型原达站法书当园啊地机并女于能费出约来皆山种际语也好字子再被家场页气位这李外学今局百问车从就市而私非夹手给例长万着正同式史力共度省目期两何主条其已诚事室无此超曲还报商重编木向坐让笑得项氏东陈该美白类士组很业如班体十看物店未品土作节说至天帮做招但信受身面王级安刘只株见首线米生周心存张通发想光南路门火使又西象话道住展叶里谁五低双把每料代半色起量北京现查浪工免阶真科儿花总初进教星开均课电旧形员去海声转设春卖选银应动强快音校材便常需钱责研按则制吗群客因贸短像感族副它届院记风证热牌林处付华论剑秋理梦英才占近价层亿排创计饮称流定们谈顺票引建案头卡质保除送财街经基器注旅侧夏调额竞母备刊那联少著死资连知楼番波显公情州章雨神博写黄特篇口纸管明考城打岛倍片夜曾港税库闻奖仅马具右较孙讯评易栏言职反伤令赏却合权吧彩速礼食购屋相段观找空源求导邮左款指八获难江村务余千志香赵供背视阿利老若诸另森准差题档早租龙冬贴读病役讲直影装放修秒某深歌立民优游官农呢座访办交极鸟接朝世派防据平营赛争红必她广医试亲御幅程杨征听友足印活份远冰完负姿属券九技玩清值取任盘附含箱宝控收变预军仍意换户包严欧房纯胡厂术奇传尚味售词扣搞君改徐盖团石委销册筛环板揉富秀稿川犬提田末飞货赤域青整拿格容逆核久胜师解奥吃杯堂晚吴录古链队亚且酒鱼顷置雪桥割密列旬刚跟油划罗支关股干党命配顶卫画运搜测照简战凡套眼乐球欲拉维拍览许毛越康急标示刀尽福蓝佳司宁良状黑既底彼载袍企喘厅笔湖兼洋依留旦云治圣迎政角亦投叫精恋艺句府胸朱健持汤哪模样野算端键协轮推适参遭助寄离猫牛县横亮减边势产温酷独敲锻血松思智祝降议梁陆折永施细树升苏漫登驻杀境跳脱演满尾船往唐随须实块茶掉泰贵护布略甲郑纳架季结鞭判禽居虏致素床旨待藏断异增补根克造狂谢答席隐谷靠泉领肉景功秘忘破药规抗封育德微镇申损警皮武症衣魔狗舞步唱诗限软扒雅抢挂义切耳繁丽告斯圈冷丁退父范鬼峰确愿榜婚隆赚普宫餐草压拣壁咽落益央仆宋摘毒弱倒帐些穿望夫抓摩袋狐监订果湾错策河借赴竿爆弄典兴丸粉庆迷镜铃假谜杜淘芬妥脚巨阳究瑞批萍棍惜汉追棒怖播乳剧寺豪互寻郎裹汇嘉丰误纪唤故趣衬绿喜激竹决宏肤晨跑睁池乱尼露趴养啦娘玉毯铁竖梅仁麦脊宿吉威般塔齐轻酿遵拦渠迈蹦铅钟移勾吨停予鞋虚匙归静菜索跌鸡搅递认肌矮搂冲困厚响妻融窗柱怪众艘盟么窑痛液赢踪沙腔盛昏巴宵膜蒜薄灯探戴休禁谊铺瞎序承态浩揭兰输涨挪善井惊虫跨充复骨豆笋扁凭延荡积构拼恐仗芒钢荐巩介勇帘坊葱终呀辽炎秤统紫泼息喝逗狼瞧狭拨洗倚冠筋岸宅盒刻卷骡缘悉奋疑枣毅坏虎蹲窜慌烛熊续庭殿揪宜妹斗凯荷沈违攻宽螺航遇罪怜杰守骄翻仪哨哈雄暮兵审锤贝举丝魂砌庄歇填隶止脆诞碍散兽逝猪暂腊酸顽疆消津丹虽辣忽隙鲁灵珠欺棵宇叔怕侄冶什催莫闪竟挨始蓬汗渗栋害烧恒穴添患馅润橡替己胞眉享概圆泊洁似失猛献童滑筑拌岩乡念浅仙骤耐钥贩紧仔雷奸瘦潮腰阵疲针狸掌梳滥幻苦玻撕杆耗羽签哥胀然脸羞浇恶击茂锁糊废惑殊捞循赠舒棕够逮贺闸临颗邀肩烟捆宗塌贱祖劲劣艇残撇佛兄陶救混坛蜡酱饶饭痰挺检戏蚁煌呜币抱扰屑芝践锅锦舟湿扬透缸灿枯呼吹骆述摆伟嫂饰铜薯疮厉脑贷聚糖硬掠慢屠丘辆燃柳霉辨腾肆顿础嫌敢忙犯绝挽俊腿荣遍携锯纠喷羊拘偏虑练睡妙薪粒呈燥墙董粗搁哑孔蚀鸽抖乖宙寇隔缺敞固疤暴净塑孩瓶嫁哄继柏驳灰恩冤刮返译遣晶幸伐寿葡败颠识忧炒疯拒悔哲采阁顾浴乃幕捷伴促肠坟操哭效敏梢担渣卵谦析泡怠扇窃嚼暗朗浊兆娃辅乙射枪谅阀粪捏姓释蠢萝皇唯串帽燕稻振淡昼剥偷盗亭葬垒纱烘劈敌椒搏巧忍鹿鼻翅括况尿夺熔累摄乘吸旺乔霸爽汽渴希距稳滤洪鹅裕掩惹辉迹暑沾执寸妄蚕籍帅习围腹欠乒聪抵阴烤箭垮泛驾蒙革誓辱怀戚冈剂仓险昌弟忠织励浙捉姜逼柜渡嘴震详绘焦掏洞辈迅糟沸樱裤踏桂帝煮甘披澡托栽岗寨鲜鹰颤暖陪誉辟逃浓拳旗雾迫抽惠漏浮蹄讨钞蝶挑惧扩旱否铲缠疏懂棚洲弹谋翼撞辞途艳肝绢瓦济骗菌睛剃址卸罩稍爹摇恨墨寒麻脾贤瞒垦沟巷飘脂衡枝泽伶纵晴惩攀诉桑尤偶律胶肾扯胃腥夸仿勒叮苗烫瓣搬插彻勤茎胁训染桌桃伸兔熟伍袭枕泻囊孝芳驱甚慕渐毫宰勿孕皂挖毙搭塞刷骑舍柄惯奴诊碧淹汪骂钻援捧债姐蚊衔秃伪坚虹怒涉涛框吊痒旷弃倡羡缓召轧泥涂汁触罚符疫裙阅蝇磨溜映杏恰谱晋剖煎碎挤滴愁奶莲棉幼仇储萌匹欢旁辛蛙锈猴牧愈膏饿蒸煤埋屯蛇抚拖呆粮粥炉琴茅郊炼槐凉坝启肥缩昨鼠赶裂脏拜渔乌估鼓醒蛋闹猜祸棋冒堪灭泪宣觉铸溪欣摸描陡貌龟颜盈亩询矿桶弓倾丢蓄肚矛突凤醋祥疗滋哀咳闭掘朴慧径勺轨袜夕验臂絮授丧闲痕筝颂锋阔椅悦尊鞠饥牙扮扭敬芦邻涌勉孟吞危纹络垫陕肃炮植墓妈驰禾砍滚杂耍饼钳鸭伞尖奔傍赔赖窝绪沃擦跪葛迁舱惨巡俱甩嚷庸沿楚愚截凑塘黎邪皱爬筹柔慰择韵霞齿衰菊碰押绕绑爷爸历挡乎宴咱俯娱刑臭岭壳忆逢珍叉霜胖笼伯障蜜纷穷绣翁浑栗吼碗盲盐炭朋懒洽斜侍宪堤醉钩筐晕晒怎拆握候刺吵苹肢绩梨歪凳仰唇坦轰耻苍贡舰纺扶茄轿烂畅甜束躺袖遮抄扎滨拥撤傅丑堡卜肺倦壶颈蛾踢磁绵稠怨毕恭妇吓陷眯焰翠悟吐虾鉴跃驼锐避猎倘崖删喊趟贞贼宾疼厘泳侦躁谨犹粘篮稀旋斥嫩辩耀舌纽盏炊灌捡侨弊偿锡钉衫缝稼灾柴抬淋腐脉纤烈畜僵扫啄巾尝咬趋谣盯抛佩屡屈驶荒罐狠砖柿摊峡唉牵晓潜漂滩摔戒龄绒厨凝冻尘傲缴傻崇酬驴肿迟眨罢盾瓜爪械削丙娇堵喂诵遥笨劳亏掀悬榆斑剪躲饱肯烦槽悠昆洒剩廉喉坡赞匪毁妖辰鸣闯疾督劝庙橘污昂乏察堆蹈赌绳炸挣歼廊叹卧雕贯纲垂挥桐尸婆壮丛叠膝遗绞盼筒厦亡朵捐侵忌帆午陵芽裁覆穗狮培漠氧撒撑斤胆臣努劫泄扔悲捕逐雀蛮阻贫漆扑慈殖悼弯俗贪坑趁踩闷盆弦凶咸咏叛眠糕缎笛碑绸拾拔斩孤辜浸奉俩丈刃谎钓窄熄徒灶伏膨抹奏沉扛尺辫挎匠诱饺畏绍梯恼狱姥糠挠慎岂悄恳愤贿璃拢叼锣秆斧惰芹侮沫默葵拐杠雁拴厌蜂哗浆摧竭伙晃蛛锹耽牢艰桨歉嘱茧蔽锄姨躬允厕乞愧俭矩捎喇舅垄叙镰耕恢蕉涝榨犁鄙讽秩姑俘僚崭馋鹊饲裳朽慨屿牲魄聋炕岔雹惕脖惭帜茫匀蔬佣鸦膊秧愉膀萄滔碌狡膛蜻叨妨嗽蝴箩壤蚂姻婶僻蜓殃粱蔑菠袄匆吩圾榴牺馒嗓乓睬垃蜘晌猾溉胳咐囧 哦噢`1234567890-=[];’,。/~!·#¥%…—*()+{}|:“《》?

Flash as3嵌入中文字体的方法相关推荐

  1. overleaf编辑latex使用中文字体的方法

    overleaf编辑latex使用中文字体的方法 解决办法 解决办法 在代码文件中引入package: \usepackage[UTF8]{ctex} 2. 点击左上角"Menu" ...

  2. 解决linux安装中文字体的方法

    解决linux安装中文字体的方法 查看系统字体 安装字体 查看系统字体 在开始安装之前,我们先查看系统中已经安装的字体. 要查看系统中已经安装的字体,我们可以使用fc-list命令进行查看.如果系统中 ...

  3. itext生成pdf文档加载中文字体解决方法

    最近接手一个任务,在网页中通过用户的输入的信息生成一个pdf文档并且下载到用户本地.iText是用于生成PDF文档的一个java类库.通过iText不仅可以生成PDF或rtf的文档,而且可以将XML. ...

  4. java linux 字体设置_Linux操作系统JDK中文字体设置方法介绍

    我们经常会发现在Linux下,java应用程序的中文会变成一个一个的"口"字,这样会给我们的使用带来很多的困扰.但是我们又不愿意放弃Linux和java的便捷. 怎么来解决这个问题 ...

  5. html设置幼圆字体,CSS font-family中文字体设置方法

    网站上的字体样式都是通过CSS来控制的,CSS font-family属性可以设置文字字体样式. 常用的网站字体设置代码如下: body{font-family:"Microsoft Yah ...

  6. adobe pdf 合并文件后提示“无法提取嵌入的字体”问题解决方法

    今天使用adobe pdf合并文件时遇到了提示"无法提取嵌入的字体"问题,合并的pdf中部分字体空白,无法显示.这就很奇怪,先前一周我按照相同的方式合并文件都没出现问题,今天就出现 ...

  7. html怎么设计为中文字体,CSS font-family中文字体设置方法

    网站上的字体样式都是通过CSS来控制的,CSS font-family属性可以设置文字字体样式. 常用的网站字体设置代码如下: body{font-family:"Microsoft Yah ...

  8. linux中jdk添加字体_Linux操作系统JDK中文字体设置方法介绍

    我们经常会发现在Linux下,java应用程序的中文会变成一个一个的"口"字,这样会给我们的使用带来很多的困扰.但是我们又不愿意放弃Linux和java的便捷. 怎么来解决这个问题 ...

  9. Flash AS3.0中文帮助下载

    AS3.0和Flash Video Encoder的中文帮助终于出来了.       这是我们学习和开发的好帮手,决不能错过.      官方的下载地址(PDF格式):                 ...

最新文章

  1. python读取数据校验数据_Python通过Schema实现数据验证方式
  2. 别再说你不会 ElasticSearch 调优了,都给你整理好了
  3. 【Python】Python中令人头疼的变量作用域问题,终于弄清楚了
  4. execCommand全集
  5. Java Servlet(八):EL自定义函数
  6. 解决 GDI 贴图的闪烁
  7. 15.docker start / stop / restart / rm / pause / unpause
  8. Python绘图 \ 数据可视化
  9. 区块链大戏上演!陈伟星VS朱啸虎公开互怼数个回合 | 区块链日报
  10. 06.看板实践——限制在制品
  11. idea下载安装破解详解
  12. 【教程】Unity 与 Simence PLC 联动通讯
  13. 多元统计分析及R语言建模(第四版)-----数据,包,资源
  14. 计算机专业考研院校选择,怎样找到心中的牛校--关于学校的选择问题(计算机专业)...
  15. 漂亮大气的html导航页面,非常大气漂亮的CSS导航栏
  16. 吉林建筑大学电气与计算机学院讲师,吉林建筑大学导师教师信息介绍-电气与计算机学院刘航...
  17. 电信宽带连接不上无线可连接服务器,我家装的是电信的宽带,能连上无线网络,但是就是不能上网连接的信号也是非常好,请问是什么问题...
  18. Mission Planner初学者安装调试教程指南(APM或PIX飞控)3——连接与烧录
  19. niuke_求字符串中的最长数字串
  20. 累乘计算问题(C语言程序设计)

热门文章

  1. 从今天开始全身心投入工作
  2. 选购太阳镜的四个“指标”
  3. 欧拉路径、欧拉回路与欧拉图(一笔画)
  4. android:为你的app设置音效
  5. 创建ingress-nginx报错
  6. abb机器人指令手册_ABB机器人控制器死机故障维修
  7. 不吹不黑!Python办公自动化,全网最全整理!
  8. method_missing,一个 Ruby 程序员的梦中情人
  9. 【语音识别】基于VQ特定人孤立词语音识别matlab 源码
  10. selenium+java 定位方法 findElement 之 By tagName