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