Flash CS3 文档 |
|||
| 学习 Adobe Flash 中的 ActionScript 2.0 > 使用文本和字符串 > 使用字体 > 创建自定义字符集 | |||
除了使用 Flash 默认字符集之外,还可以创建自己的字符集并将其添加到“字符嵌入”对话框。例如,您可能需要某些字段包含 Extended Latin,支持各种强调符。但是您可能不需要数字和标点符号,或者您可能只需要大写字符。您可以创建仅包含所需字符的自定义字符集,而不是嵌入整个字符集。这种方法不会存储不需要的字符的额外字体信息,因此可以使 SWF 文件保持最小。
要创建自定义字符集,您必须编辑 UnicodeTable.xml 文件,该文件位于 C:\Program Files\Adobe\Adobe Flash CS3\<language>\First Run\FontEmbedding\ 目录。该文件定义默认字符集及其包含的字符范围和字符。
在创建自定义字符集之前,应理解必需的 XML 结构。以下 XML 节点定义大写 [A..Z] 字符集:
<glyphRange name="Uppercase [A..Z] " id="1" >
<range min="0x0020" max ="0x0020" />
<range min="0x0041" max ="0x005A" />
</glyphRange>
请注意,glyphRange 节点包含 name、Uppercase [A..Z] 和 id。glyphRange 节点可具有任意数量的 range 子节点。range 可以是单个字符,如前面的代码片段中所示的 0x0020(空格字符),也可以是一系列字符,如第 2 个 range 子节点。若要仅嵌入单个字符,请将 min 值和 max 值设置为相同的 Unicode 字符值。
XML glyphRange 节点的另一个示例是 Numerals [0..9] 节点:
<glyphRange name="Numerals [0..9] " id="3" >
<range min="0x0030" max ="0x0039" />
<range min="0x002E" max ="0x002E" />
</glyphRange>
此字符范围包含 Unicode 值 0x0030 (0) 到 0x0039 (9),以及 0x002E (.)。
在创建自定义字符集之前,需要了解字符及其相应的 Unicode 值。查找 Unicode 值的最佳位置是 Unicode Standards 网站 www.unicode.org,该网站包含面向数十种语言的 Unicode 字符代码图表。
|
小心 |
|
若要添加自定义字符集,需要编辑 Flash 安装文件夹中的 XML 文件。在编辑此文件之前,应制作备份副本,以备还原为原始 Unicode 表时使用。 |
|
小心 |
|
Adobe 建议不要修改随 Flash 一起安装的现有字符集,而应创建包含所需字符和标点符号的自定义字符集。 |
|
注意 |
|
请不要忘记保存此文档备份,以备还原为随 Flash 安装的原始文件时使用。 |
</fontEmbeddingTable> 的紧前面添加以下 XML 代码:
<glyphRange name="Uppercase and Numerals [A..Z,0..9] " id="100" >
<range min="0x0020" max ="0x0020" />
<range min="0x002E" max ="0x002E" />
<range min="0x0030" max ="0x0039" />
<range min="0x0041" max ="0x005A" />
</glyphRange>
如果已打开 Flash,则必须重新启动该应用程序才能使用新的字符集。
如果选择自定义字符集,大写和数字 [A..Z,0..9],以及默认大写 [A..Z] 或数字 [0..9] 字符集,请注意嵌入的字型总数不会改变。原因是自定义字符集中包含了所有大写字符,而 Flash 不包含重复字符,这样可使文件大小保持最小。如果选择标点符号字符集(包含 52 个字型)以及自定义字符集(包含 38 个字型),则 Flash 将只存储 88 个而不是 90 个字型的信息。这是因为自定义字符集中已包含了其中两个重复的字符(空格和句点)。
|
提示 |
|
字符集在“字符嵌入”对话框中的位置由其在 XML 文档中的位置决定。通过在 XML 文件中移动 <glyphRange> 包,可以重新排列字符集顺序,包括自定义字符集。 |
Flash CS3
当前页: http://livedocs.adobe.com/flash/9.0_cn/main/00000894.html