Я создал класс, который будет использовать встроенный шрифт для динамического создания растрового шрифта во время выполнения. Пока это работает хорошо, за исключением того, что у меня есть небольшая проблема с интервалом между символами.
На изображении ниже первая строка представляет собой фактический TextField
, а вторая была визуализирована с использованием сгенерированного растрового шрифта.
Если вы посмотрите на слово «лиса» или на «эд» в слове «прыгнул», вы увидите, что расстояние между буквами выглядит немного странно.
Существуют ли какие-либо альтернативы классу TextLineMetrics
, которые дадут мне более точные метрики персонажа?
ОБНОВЛЕНИЕ:
Качество рендеринга текста с использованием нового Flash Text Engine:
ОБНОВЛЕНИЕ 2:
Случайно я в конце концов нашел решение:
Первой проблемой было свойство antiAliasType
, которому было присвоено значение AntiAliasType.ADVANCED
.
Хотя оно создает текст более высокого качества, оно также приводит к тому, что TextLineMetrics
возвращает неправильную ширину символов.
Во-вторых, его тоже нужно было округлить (используя Math.ceil
) до ближайшего пикселя, а не вниз.