【发布时间】:2012-10-17 04:37:32
【问题描述】:
在文本字段组件中,有一个名为TextFormat 的类。 TextFormat 有一个名为font 的属性可以让你设置字体,但是帮助文档没有给出任何关于字体的信息,它只告诉你默认是“Times New Roman”,所以我只能设置'Times新罗马?
有没有办法列出所有可用的字体以便我从列表中选择一个?
【问题讨论】:
标签: actionscript-3 flash
在文本字段组件中,有一个名为TextFormat 的类。 TextFormat 有一个名为font 的属性可以让你设置字体,但是帮助文档没有给出任何关于字体的信息,它只告诉你默认是“Times New Roman”,所以我只能设置'Times新罗马?
有没有办法列出所有可用的字体以便我从列表中选择一个?
【问题讨论】:
标签: actionscript-3 flash
看看Font.enumerateFonts()这个函数会给你一个所有可用的嵌入式和设备字体的列表。
本例首先调用静态方法Font.enumerateFonts() 获取所有设备和嵌入字体的列表。然后它对 由 fontName 属性生成的 Font 对象数组。
接下来的例子展示了如何调用 Font.enumerateFonts() 方法 将 enumerateDeviceFonts 参数设置为 false。所结果的 Array 仅包含嵌入的 Font 对象。 (如果您运行此代码 在不包含任何嵌入字体的应用程序中, EmbeddedFonts 数组将为空。)
import flash.text.Font;
var allFonts:Array = Font.enumerateFonts(true);
allFonts.sortOn("fontName", Array.CASEINSENSITIVE);
var embeddedFonts:Array = Font.enumerateFonts(false);
embeddedFonts.sortOn("fontName", Array.CASEINSENSITIVE);
【讨论】: