Flash中如何显示清晰的字体
最近许多朋友询问在Flash中显示清晰的文字,我在这里写一点经验
Flash显示静态文本的时候,文字显得很模糊,中间甚至粘成一块
解决的办法有3个
1) 使用设备字体
当你在Flash中使用静态文本的时候,Flash会插入字体轮廓信息,并进行抗锯齿处理
所以轮廓会显得很模糊
使用设备字体后,Flash不再插入字体轮廓信息,
只是在客户端播放时调用客户端的字体信息,也不会进行抗锯齿处理,
这样的做结果有:
a. 字体在12pt以下时很清晰,但在比较大(大约18pt以上)时有明显的锯齿
b. 如果客户端不存在相应的字体,则显示会出现预料外的情况,肯定不是你希望的字体就是了
所以使用的字体一定要通用才行
c. Flash对与设备字体无法进行常规的时间线遮罩,需要用setMask命令,参见:
Flash MX 2004 中的文本遮罩
d. 在Flash的编辑状态下,看不出区别,需要导出后才能见到效果。总是有急性子的朋友抱怨说没效果,后来证实是没有按ctrl+Enter,汗
【补充】:
a) Flash 包括三种设备字体: _sans(类似于 Helvetica 或 Arial 字体)、_serif(类似于 Times Roman 字体)和 _typewriter(类似于 Courier 字体)。
你也可以自定义,方法是把文本框属性面板上的“使用设备字体(use device font)”选项勾上
b) 动态文本和输入文本默认是使用设备字体的,所以通常看起来,他们比较清晰
如果你的需要刚好相反,那么就要用到嵌入字体。
方法:
点击属性面板上的“字符(characters)"按钮,
然后看到一个对话框,选择相应的选项即可
【注意】英文字体一般比较小,完全嵌入也不会让swf增大多少。但是中文字体就完全不一样了,千万不要全部嵌入,只要嵌入需要的字符就行了,否则文件肯定以MB计算。
嵌入字体以后,即便是没有安装该字体的机子,也能看到预期的效果
[page_break]
2) 使用锯齿文字工具
使用设备字体让文字清晰是可以,但是有那么多不方便的地方,总是不太舒服
Flash MX 2004中文本属性面板上出现了一个新鲜的东西:锯齿文字
点击这个按钮以后,即使在编辑状态下,也能看到字体变得清晰了
而且在没有安装该字体的电脑上也能正常显示
这让文字的工作变得非常轻松,尤其是象素字体
以前总是担心不清晰,而且不通用,用嵌入字体后并不是每种字体都依旧清晰。现在只用这个工具就搞定了。
关于锯齿文字工具就不多说了,需要注意的是,文字会有一定幅度的“下沉”,可能有时候一个字只有上半部分显示出来了。没多大关系,把文本框拉大一点就行了。
3) 使用位图
用Photoshop之类的图像处理软件做,然后输出透明GIF或PNG,最后导入到Flash中
在Flash的库中,将位图的属性设置一下,取消“允许平滑”选项
这个方法略显麻烦,不怎么常用。但是如果考虑到结合一些修饰、特效,还是比较方便的
比如用Photoshop给文字添加阴影,然后导出透明PNG给Flash