0

我环顾四周,但找不到任何可以直接解决我的问题的东西。有几个帖子是正确的,但我无法解决这个问题。

我需要自动调整文本大小,使其不超过按钮的宽度。我的大小文本的最大长度似乎是 13 个字符,然后才会变得太大。

--

该程序首先动态创建几个按钮,用 XML 文档中设置的标题和描述填充它们。

要添加文本,我有以下代码:

var tform:TextFormat = new TextFormat();
tform.size = 20;
tform.font = "Arial";
tform.align = TextFormatAlign.CENTER;
tform.color = 0xFFFFFF;
tform.bold = true;

var tfield:TextField = new TextField();
tfield.text = texttitle;
tfield.width = button.width;
tfield.x = 0;
tfield.y = 30;

tfield.setTextFormat(tform);
addChild(tfield);

这会将文本直接定位在距离顶部 30 像素的按钮中心。因此,我面临的问题是如何修改字体大小以将文本保留在框中。

--

现在,因为我将宽度设置为面板的大小,所以我看不到任何明显的循环方式来根据允许的最大宽度设置字体大小。

我相信这一切都是有道理的,我欢迎任何修改以使代码更高效,因为我对 AS3 和 Flash 相对较新,因此仍在学习曲线上。

问候,乔恩。

4

1 回答 1

2

我遇到了这个问题并通过循环文本设置直到它适合它来解决它

类似的东西

while (tf.textwidth > button.width){
   myTextFormat.size = myTextFormat.size - 1;
   tf.setTextFormat(myTextFormat);
   tf.autoSize = "left";
}
于 2012-04-09T17:59:50.850 回答