在AS3中渲染文本

时间:2011-02-04 09:48:16

标签: actionscript-3

我对如何在纯AS3项目中呈现文本感到困惑。像flash.text.StaticText这样的类,但这些只是设计师,你不能在代码中创建它们。我期待Graphics类有文本呈现选项,但唉,没有。

具体来说,我打算在每个玩家的精灵上面添加一个标签,上面有他们的名字,健康%等等。所以我希望以某种方式使用Graphics添加一个子文本元素或绘制文本......这是只读,不应该支持用户输入,我只想在屏幕上绘制文字。

2 个答案:

答案 0 :(得分:3)

您可以使用TextField课程。请检查参考。所有领域和方法都是不言自明的。

一个可能的例子。

var myField:TextField = new TextField();
myField.text = "my text";
myField.x = 200;
myField.y = 200;
addChild(myField); // assuming you are in a container class 

答案 1 :(得分:0)

如果TextField不起作用,您可以使用此方法创建文本:

var format:ElementFormat = new ElementFormat(); 
format.fontSize = 26;
format.color = 0x0000FF;

var textElement:TextElement = new TextElement('Hello World!', format); 

var textBlock:TextBlock = new TextBlock(); 
textBlock.content = textElement; 

var textLine:TextLine = textBlock.createTextLine(null, 500); 

textLine.x = (stage.stageWidtht - textLine.width) / 2;
textLine.y = (stage.stageHeight - textLine.height) / 2;     

addChild(textLine);

看看: Creating and displaying text

中的ActionScript 3.0 Developer’s Guide