У меня возникла проблема с отображением шрифта при использовании кастомного урду-шрифта, а именно Jameel Noori Nastaliq (вариант Noto Nastaliq Urdu) в Discourse. Моя конфигурация:
Браузер: Chrome Версия 138.0.7204.183
Шрифт: Jameel Noori Nastaliq
Платформа: Discourse (использую компонент темы согласно этой инструкции)
Проблема
При применении шрифта Jameel Noori Nastaliq в Discourse текст отображается некорректно:
Отдельные слова формируются неправильно. На приложенном изображении текст справа показывает текущий способ отображения в Discourse, тогда как слева показано ожидаемое отображение (с использованием того же шрифта и браузера).
Другие шрифты урду (не Nastaliq) отображаются корректно в той же среде.
Кроме того, шрифт Noto Nastaliq Urdu отображается с необычно большим размером шрифта по сравнению с другими шрифтами. Из-за этого текст выглядит слишком крупным и не согласуется с остальным интерфейсом.
Что я пробовал
Тестирование нескольких шрифтов Nastaliq: у всех шрифтов Nastaliq (Jameel, Mehr и Noto) наблюдается эта проблема.
Сравнение с другими браузерами: (тестировалось в Firefox/Edge)
Проверка переопределений CSS: шрифт корректно применяется через @font-face и загружается Discourse.
Ожидаемое против фактического
Ожидаемое: Корректные лигатуры Nastaliq и пропорциональное масштабирование (см. левую часть изображения).
Фактическое: Нарушенное формирование слов и чрезмерно крупный текст (см. правую часть изображения).
Сталкивался ли кто-нибудь ещё с этой проблемой при использовании Noto Nastaliq Urdu в связке Chrome + Discourse? Является ли это ошибкой формирования текста в Chrome, проблемой самого шрифта или чем-то связанным с тем, как Discourse обрабатывает кастомные шрифты?
Да, я думаю, что искажение вызывает в основном жирное начертание.
Либо отключите все жирные шрифты с помощью глобального переопределения, либо убедитесь, что используемый вами шрифт имеет отдельный вариант жирного начертания.
@chapoi спасибо. Я хочу сказать, что правило CSS применяется, но не даёт желаемого эффекта. Ниже ссылки, чтобы вы могли воспроизвести то, что происходит у меня:
/* Mehr Nastaliq Web Font v2 */
@font-face {
font-family: "Mehr";
src: url("https://cdn.jsdelivr.net/npm/mehr-nastaliq/fonts/mehr.woff2") format("woff2")
}