일부 단어의 형태가 잘못 표시됩니다. 첨부된 이미지에서 오른쪽은 Discourse가 현재 렌더링하는 모습이고, 왼쪽은 동일한 폰트와 브라우저를 사용할 때의 예상 렌더링 결과입니다.
다른 우르두 폰트(Non-Nastaliq)는 동일한 환경에서 정상적으로 표시됩니다.
또한, Noto Nastaliq Urdu는 다른 폰트와 비교했을 때 비정상적으로 큰 글꼴 크기로 렌더링됩니다. 이로 인해 텍스트가 과도하게 커 보이며 나머지 UI와 일관성이 없습니다.
시도해 본 방법
여러 Nastaliq 폰트 테스트: Jameel, Mehr, Noto 등 모든 Nastaliq 폰트에서 이 문제가 발생합니다.
다른 브라우저와 비교: (Firefox/Edge에서 테스트)
CSS 오버라이드 확인: 폰트는 @font-face를 통해 올바르게 적용되고 있으며 Discourse에 의해 로드됩니다.
예상 vs 실제
예상: 올바른 Nastaliq 리가처(연결 문자)와 비율에 맞는 크기(이미지 왼쪽 참조).
실제: 깨진 단어 형태와 과도하게 큰 텍스트(이미지 오른쪽 참조).
Noto Nastaliq Urdu를 Chrome + Discourse 환경에서 사용하면서 이 문제를 경험하신 분이 계신가요? 이것이 Chrome의 shaping 버그인지, 폰트 자체의 문제인지, 아니면 Discourse가 사용자 지정 폰트를 처리하는 방식에 있는 문제인지 궁금합니다.
/* Mehr Nastaliq Web Font v2 */
@font-face {
font-family: "Mehr";
src: url("https://cdn.jsdelivr.net/npm/mehr-nastaliq/fonts/mehr.woff2") format("woff2")
}
이 문제는 Discourse의 기본 CSS 글꼴 기능 설정이 복잡한 문자열 렌더링에 간섭을 일으키기 때문에 발생합니다:
css
//문제가 되는 기본 설정
font-variant-ligatures: none;
font-feature-settings: "calt" 0;
//해결 방법은 오버라이드입니다
font-variant-ligatures: normal;
font-feature-settings: normal;