在Flash CS5中,htmlText似乎对我动态创建的文本字段(工作正常)的工作方式不同,而不是我用IDE绘制的文本字段(不起作用)。为什么?

时间:2012-01-07 23:45:02

标签: flash actionscript-3 flash-cs5 htmltext

[我刚刚解决了这个问题 - 我需要设置'使用设备字体'。]

当我使用以下代码初始化文本框时:

var tf2:TextField = createCustomTextField(10, 50, 400, 22);
tf2.htmlText = '<FONT FACE="Impact"><i>Lorem ipsum</i>';

function createCustomTextField(x:Number, y:Number, width:Number, height:Number):TextField {
    var result:TextField = new TextField();
    result.x = x;
    result.y = y;
    result.width = width;
    result.height = height;
    addChild(result);
    return result;
 }

一切都很有效,而且正如您所期望的那样 - 我在倾斜的Impact中获得了所请求的文本。另一方面,如果我使用CS5 IDE 创建文本框,即使我嵌入了Impact(我无法嵌入Impact italic,因为似乎没有这样的东西),我根本无法用斜体显示 - 斜体文本只是消失了。这非常令人困惑 - 发生了什么?

我不认为这是其他人一直在询问CS4 / CS5转变的问题,但可以想象 - 抱歉,如果是的话!

1 个答案:

答案 0 :(得分:1)

在Flash CS5中,字体嵌入的管理方式与以前的版本不同。

单击“文本”菜单下的“字体嵌入...”选项。您可以在此处设置嵌入所需的所有字体,并指定所需的样式。

例如,如果要嵌入常规样式的Impact和相同字体的斜体版本,则需要将它们都添加到列表中(并指定它们应包含的字符)。

然后,您需要指定要使用的字体,例如样式表。

This link更详细地解释了如何使用样式表(例如)将嵌入字体的斜体版本应用于htmlText以及它与Flash CS4的区别。