是否有可能在AS3中获得准确的字符/字体指标?

时间:2012-01-12 12:16:29

标签: actionscript-3 text textfield fontmetrics

我创建了一个类,它将使用嵌入字体在运行时动态生成位图字体。 到目前为止,除了我在字符间距方面存在一个小问题外,它的效果很好。

在下图中,第一行是实际的TextField,第二行已经呈现 使用生成的位图字体。

Character spacing problem example

如果你看'fox'或'jumped'这个词的'ed',你可以看到字母间距看起来有点奇怪。

TextLineMetrics课程是否有其他替代方法可以为我提供更准确的角色指标?

更新:

使用新的Flash文本引擎的文本渲染质量:

Text rendering quality using the new Flash Text Engine

更新2:

我偶然找到了解决方案:

第一个问题是antiAliasType属性设置为AntiAliasType.ADVANCED 虽然它会生成质量更高的文本,但也会导致TextLineMetrics返回不正确的字符宽度。

第二个问题是它必须向上舍入(使用Math.ceil)到最近的像素而不是向下。

1 个答案:

答案 0 :(得分:0)

TextField太重了。 flash.text.engine可以更好地生成位图