Actionscript 3 自动缩放AS3中的TLF文本

Actionscript 3 自动缩放AS3中的TLF文本,actionscript-3,tlf,Actionscript 3,Tlf,我需要一个actionscript解决方案,允许动态文本以预先确定的尺寸(x、y、宽度、高度)放入文本框,然后将文本向上或向下缩放,使其在这些尺寸内尽可能大,而无需滚动。Wordwrap将是自动的,不会有任何段落中断 我有一个使用Flash经典文本的工作模型,但我希望能够利用TLF提供的内嵌样式。我只是还没有完全了解所有的TLF特性 有没有人知道这种情况是否已经有了解决方案?或者可能会引导我朝着正确的方向前进?Hm-这应该是可行的,但我不确定TLF字体大小有多精确。。。无论如何: newForm

我需要一个actionscript解决方案,允许动态文本以预先确定的尺寸(x、y、宽度、高度)放入文本框,然后将文本向上或向下缩放,使其在这些尺寸内尽可能大,而无需滚动。Wordwrap将是自动的,不会有任何段落中断

我有一个使用Flash经典文本的工作模型,但我希望能够利用TLF提供的内嵌样式。我只是还没有完全了解所有的TLF特性


有没有人知道这种情况是否已经有了解决方案?或者可能会引导我朝着正确的方向前进?

Hm-这应该是可行的,但我不确定TLF字体大小有多精确。。。无论如何:

newFormat:TextFormat = new TextFormat();
newFormat.size *= myText.width / myText.textWidth;
myText.setTextFormat(newFormat);
现在-这基本上创建了一个TextFormat对象,并将其字体大小设置为myText的容器宽度(最大宽度)除以实际文本宽度。再次-如果TLF字体大小不够精确,则大小行必须为:

newFormat.size *= Math.round(myText.width / myText.textWidth * 100) / 100;
100表示四舍五入到百分之一


编辑:我真的相信这种方法不仅简单得多,而且高效。。。我的意思是-这就是TextField.textWidth…

Hm的要点-这应该可以工作,但我不确定TLF字体大小有多精确。。。无论如何:

newFormat:TextFormat = new TextFormat();
newFormat.size *= myText.width / myText.textWidth;
myText.setTextFormat(newFormat);
现在-这基本上创建了一个TextFormat对象,并将其字体大小设置为myText的容器宽度(最大宽度)除以实际文本宽度。再次-如果TLF字体大小不够精确,则大小行必须为:

newFormat.size *= Math.round(myText.width / myText.textWidth * 100) / 100;
100表示四舍五入到百分之一


编辑:我真的相信这种方法不仅简单得多,而且高效。。。我的意思是-这就是TextField的重点。textWidth…

@phil:这应该会有帮助:


在线演示,右键单击获取源代码。

@phil:这应该会有帮助:


在线演示,右键单击以获取源代码。

太棒了!这正是我需要去做的。谢谢你!这正是我需要去做的。感谢如果您只使用一条生产线,这是一个很好的解决方案。发布的一个大世界支持多个。如果您只使用一行,这是一个很好的解决方案。发布的一个大世界支持多个。