• 微课视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
微课江湖
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 微课视频
  • photoshop
  • Fireworks
  • CorelDraw
  • Illustrator
  • Painter
  • Freehand
  • Indesign
  • flash
  • maya
  • autocad
  • 3dmax
您的位置:首页 > 平面设计 >flash > Flash as3嵌入中文字体的方法

Flash as3嵌入中文字体的方法

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-05-24

佚名 向大家分享了Flash as3嵌入中文字体的方法,其中包含flash as3教程,flash as3 api,flash as3帮助,flash as3视频教程,flash游戏修改器as3等知识点,遇到此问题的同学们可以参考下
因为最近要做一个项目,涉及到要输入文本,Flash的输入文本默认下是只能显示设备字体。连系统内的字体都不能设置,必须要嵌入才能输入。
as2的时代,可以用加载字体库的方式来解决,Adobe官方的解释太烦琐了,其实总结起来就是一个替换字体的过程,把外部库的自定义字体替换当前的输入字体。
例如如下:
如果是as2的话,新建一个Fla文件share.fla,然后在库里新建一个字体文件,然后设置他的标识为MyFont,随便选择系统内的一种字体,然后选择linkage里的导出as,导出runtime sharing,导出第一帧,然后在url处填写share.swf,然后编译成share.swf

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

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


下面我们要说的是如何用程序来实现as3的中文动态嵌入加载,查了网上的一些资料,老外的做法是新建一个类,然后在类里直接embed这个font,然后最通过加载这个share.swf,然后反射出这个Font类,再注册一次使用,经试验,发现这样的做法英文是可以的,如果是中文,在编译share.swf的时候会报错
嵌入字体库文件类
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;
}
}
调用字体库文件类
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);
}
这个是老外的做法,试验过后发现英文是可以没有问题的,但是如果是比较大的中文ttf,在嵌入字体库文件类那处就会有问题,mxmlc编译的时候会报错
这样我们的做法是,在Flash cs3里来做字体共享库,同样在库里新建一个字体

然后在主文件里加载,然后用反射的方法注册,再使用
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);
}
</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • flash文本竖排效果实现as3代码
  • Flash AS3 连锁反应的粒子动画
  • Flash AS3 制作文字飞出动画
  • Flash AS3 快速制作烟雾动画
  • Flash AS3代码实现鼠标跟随喷枪涂鸦效果
  • Flash AS3的parameters对象处理网页参数
  • FLASH AS3与网页JS参数值传递的问题
  • 从基础开始深入学Flash AS3教程(6)(译文)
  • Flash as3教程:OutDisplay类
  • 从基础开始深入学Flash AS3教程(7)(译文)

相关文章

  • 2017-05-24Flash辅助线轻松辅助工具绘制女孩脸部
  • 2017-05-24flash制作扇子张开收合的gif动画效果
  • 2017-05-24Flash开发规范
  • 2017-05-24Flash CS4实例教程:制作汽车动画型广告
  • 2017-05-24Flash教程:测试AS代码的执行速度
  • 2017-05-24怎么用FLASH制作动画?FLASH制作动画过程解析
  • 2017-05-24flash中怎么通过时间轴将图片连成动画?
  • 2017-05-24Flash AS 入门教程 乱数排列(随机数)方法
  • 2017-05-24Flash AS3入门教程:用帧循环制作匀速运动
  • 2017-05-24ActionScript 学习小心得

文章分类

  • photoshop
  • Fireworks
  • CorelDraw
  • Illustrator
  • Painter
  • Freehand
  • Indesign
  • flash
  • maya
  • autocad
  • 3dmax

最近更新的内容

    • flash as3.0 跨域的解决办法
    • flash CS5怎样选择对象?flash选择对象方法介绍
    • Flash三方软件简单快速制作水波GIF动画特效
    • Flash AS 教程:子类化显示对象
    • flash怎么制作3d按钮? flash按钮制作教程
    • flash怎样改变线条或形状轮廓的形状?
    • Flash制作电影序幕的文字动画效果
    • AS实例之简单的不倒翁Flash动画
    • Flash AS3教程:ApplySocket类
    • Flash AS 教程:构造函数(Constructor)

关于我们 - 联系我们 - 免责声明 - 网站地图

©2015-2018 All Rights Reserved. 微课江湖 版权所有