У меня есть многоязычный проект (в настоящее время 13 языков), в котором используются различные варианты шрифтов Helvetica Neue, в основном жирный, сжатый и регулярные сокращения из набора шрифтов LinoType Pro (который включает символы Западной Европы) и то же самое для кириллица. Возможно, мы добавим китайские и японские варианты в будущем.
Я настроил проект для использования разных таблиц стилей CSS и отдельно загружал шрифты для каждой версии, в зависимости от того, какой язык выбирает пользователь, поэтому я могу иметь разные высоты строк, кернинг и / или размеры шрифтов, чтобы все сохраняло Оригинальный вид, даже если шрифты не похожи друг на друга.
Все это работает хорошо, за исключением одной проблемы: почему-то все буквы кириллицы кажутся смещенными. Они появляются на 2-3 пикселя ниже правильной базовой линии и фактически выступают за нижнюю границу текстового поля, даже если для поля установлено автоматическое изменение размера. Когда я использую textfield.getCharBoundaries()
, все значения кажутся правильными, даже если они явно не отображаются правильно.
Чтобы все выглядело аккуратно, я мог бы, конечно, вручную переместить все проблемные текстовые поля вверх или вниз в зависимости от языка и размера шрифта, но мне было интересно, есть ли какой-нибудь способ предотвратить или хотя бы обнаружить такое смещение, чтобы автоматически обрабатывать корректировки - Flash Player должен иметь некоторую информацию о том, как все отображается, не так ли? У кого-нибудь из вас были подобные проблемы? Или еще лучше: решение?