Flash CS5 - 当我更改text属性时文本消失,除非我没有设置别名

时间:2011-10-28 22:51:07

标签: flash actionscript-3 flash-cs5 textfield antialiasing

我有一个动态文本字段,与我在Flash IDE中设置的文本看起来很正常,但是当我以编程方式更改它的文本属性时,它会消失。 除非我将textfield设置为不使用抗锯齿( Bitmap text [no anti-alias] );

我不知道为什么会这样,也许是因为我使用的字体,(它是 Helvetica Neue ,Black Condensed)或者它是一些Flash CS5 Bug。

这里有人有这个问题吗?

Ps。:文本字段已经包含所有字符 embeded ,这就是文本最初显示的原因,并在我更改文本时消失

[编辑]

如果我将字体的样式从Black Condensed(一种粗体+斜体)更改为Black(只是粗体),问题就不会再发生了。但我真的需要使用那种字体样式......

2 个答案:

答案 0 :(得分:11)

不确定这是否与您的问题有关,但有一个“错误”是,当您将新文本分配给动态TextField时,有时与原始文本一起使用的格式不会应用于新文本。

也许以下有帮助:

// ...
// get format of first char if TextField contains some text
var tf: TextFormat = aTextField.length > 0 ? aTextField.getTextFormat(0, 1) : aTextField.getTextFormat();
// assign new text
aTextField.text = aText;
// apply formatting to new text
aTextField.setTextFormat(tf);

答案 1 :(得分:0)

尝试在“字符”面板中打开“嵌入..”,然后在“字符范围”中选择“全部”。