我创建了一个类,它将使用嵌入式字体在运行时动态生成位图字体。到目前为止,它运行良好,除了我对字符间距有一个小问题。
在下图中,第一行是实际TextField
的,第二行是使用生成的位图字体渲染的。
如果您查看单词“fox”或单词“jumped”的“ed”,您会发现字母间距看起来有点奇怪。
是否有任何替代TextLineMetrics
课程可以为我提供更准确的性格指标?
更新 :
使用新的 Flash 文本引擎的文本渲染质量:
更新 2:
偶然我最终找到了解决方案:
第一个问题是antiAliasType
设置为 的属性AntiAliasType.ADVANCED
。
尽管它会产生更高质量的文本,但它也会导致TextLineMetrics
返回不正确的字符宽度。
第二个是它还必须向上取整(使用Math.ceil
)到最近的像素,而不是向下取整。