父SWF在加载的子swf中创建textField时,不会显示已加载的字体

时间:2011-06-14 22:32:25

标签: flash actionscript-3 fonts

我正在处理一个项目,该项目具有与文档类关联的主swf文件。它加载提供项目文本内容的XML,然后加载包含其库中字体的swf,然后加载几个内容模块swfs中的第一个。当字体swf出现时,我正在使用Font.registerFont()注册其库字体,并在TextFormat对象中使用它。一切都完成之后,我可以在文档类中添加代码,在主swf的舞台上创建一个文本字段,并使用TextFormat对象成功格式化,但是当我尝试在加载的内容模块swf中执行相同的操作时,文字根本没有出现在那里。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

我喜欢这个问题的难度。

从未遇到过问题,但首先您可以验证:

tf.embedFonts = true;

或者你不能简单地用以下字体嵌入字体:

[Embed(source = "../bin/Fonts/book.ttf",  mimeType = "application/x-font", fontName = "bookEmbed", embedAsCFF = 'false')]
public var font01:Class;

然后

embedFonts = true;
defaultTextFormat = new TextFormat("bookEmbed", 20, 0xFFFFFF);
text = questions.questItem[currentQ].questTitle;

(按此顺序,在textformat之前设置文本对我不起作用)

请确保您使用嵌入字体的fontName来定义textFormat的字体。