我们在MovieClip中有一堆TextFields的库。在运行时,我们创建其中一个的实例,在其上运行getTextFormat以获取格式,然后在代码中创建一堆TextField并在它们上运行setTextFormat以赋予它们相同的格式。
我正在尝试用TLFTextFields做同样的事情。我有以下内容:
var text:TLFTextField = new classFromLib();
text.selectable = true; //required for getTextFormat to work, flash bug
textFormat = text.getTextFormat();
text.selectable = false; // set it back to false
现在的问题是textFormat.leading是-2147483648,而textFormat.letterSpacing是NaN。运行text.setTextFormat(textFormat)时,这会分别产生以下2个运行时错误:
Property lineHeight value -2147483648 is out of range
Property trackingRight value NaN is out of range
如果我在运行setTextFormat之前将textFormat.leading和textFormat.letterSpacing设置为null,那么一切正常,但显然文本字段没有获得库中的那个的前导和字母间距。这是一个问题,因为我需要这两个属性。有人知道解决这个问题吗?
答案 0 :(得分:0)
您可能需要从TLTFTextfield获取TextLayerFormat:
Here's the documentation on the TextLayerFormat.
另一个选项是获取内容属性,以及包含这些属性的use ElementFormat to get access that the formatting object