문제
위 글을 따라하여 MacType(버전: 2025.6.9)과 noMeiryoUI(버전: 3.4.0) 프로그램을 사용하여 윈도우 운영체제의 폰트를 Pretendard JP Medium(버전: 1.3.9)으로 적용하여 아래 사진과 같이 윈도우의 폰트를 예쁘게 바꿀 수 있었습니다.
사용한 버전
MacType(2025.6.9)
noMeiryoUI(3.4.0)
Pretendard JP(1.3.9)

개인적으로 정말 만족스럽지만 몇가지 흠이 있었습니다.



하지만 이상한 점은, Pretendard JP 폰트를 사용했을 때만 저런 현상이 나타나고 그냥 Pretendard 폰트를 사용하면 저런 현상이 없다는 것입니다.
그럼 그냥 Pretendard를 사용하면 안되나? 생각할 수 있겠지만 Pretendard는 한자를 지원하지 않기 때문에 한자가 깨지는 현상이 발생하여 Pretendard JP를 꼭 사용해야만 하는 상황입니다. Pretendard JP는 한글과 한자 모두 지원합니다.
추정되는 원인
Pretendard JP 폰트는 폰트 안에 한국어 문자들이 들어있음에도 불구하고(한국어를 지원함에도 불구하고), 해당 폰트가 지원하는 언어들을 나타내는 메타정보인 OS/2 코드페이지 정보에 Korean Wansung 코드가 포함되어있지 않았습니다.
그래서 Pretendard JP가 일부 GUI 요소에서 한국어를 핸들링하지 못하고 바탕체와 궁서체 계열의 OS 기본 폰트로 fallback하는 현상으로 추정됩니다.
간단하게 말하자면, 그냥 폰트 메타정보에 한국어가 포함돼있지 않아서 윈도우가 '아 이 폰트에는 한국어가 없네' 라고 생각해서 바탕체와 궁서체 계열의 기본 폰트로 fallback한 것으로 추정됩니다.
하지만 실제로 해당 폰트는 한국어를 포함하고 있습니다. 단지 메타정보에만 '이 폰트는 한국어를 지원합니다' 라고 표시를 안해뒀을 뿐입니다.
해결 방법
폰트의 메타 정보를 수정하는 스크립트를 오픈소스로 공개하였습니다.
https://github.com/minmoong/PretendardJP-modified-ttf
GitHub - minmoong/PretendardJP-modified-ttf: Modified PretendardJP TTF release for resolve unexpected fallback in Windows
Modified PretendardJP TTF release for resolve unexpected fallback in Windows - minmoong/PretendardJP-modified-ttf
github.com
링크에 들어가보면 아래와 같이 Releases에 수정된 TTF 파일들을 업로드 해두었습니다.

Release를 클릭한 다음 아래와 같이 파일을 다운로드하고 압축을 해제한 뒤 모든 폰트를 설치해주면 됩니다.

만약 Releases에 배포된 파일이 의심스럽다면, 직접 main.py 스크립트를 실행하여 패치를 진행하면 됩니다. 패치된 폰트들은 모두 build 폴더에 저장됩니다. 빌드가 끝난 뒤 폰트를 모두 설치하세요.


이후 재부팅하면 위와 같이 폰트가 제대로 적용된 모습을 볼 수 있습니다.
문제의 원인을 진단한 방법
어떻게 해당 문제의 원인을 찾았는지 설명하겠습니다.
Pretendard 폰트에서는 fallback 현상이 발생하지 않은 반면, Pretendard JP에서만 fallback이 발생하는 것에 주목했습니다.
따라서 두 폰트의 메타 정보를 비교해보기 위해 FontForge 프로그램으로 열어서 확인했습니다.

위와 같이 왼쪽(Pretendard)은 Korean Wansung 플래그가 켜져있지만 오른쪽(Pretendard JP)은 꺼져있습니다.
결국 이것이 문제였고 https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ulcodepagerange 를 참고하여 TTF 메타정보 수정을 통해 해결할 수 있었습니다.
하지만 한국어 뿐만 아니라 폰트의 Unicode Range에 존재하지만 MS Code Pages에 존재하지 않는 언어가 더 있었습니다. 이것을 찾는 방법은 위 사진에서 MS Code Page 글자 옆 Default 체크박스를 체크하면 FontForge가 자동으로 Unicode 범위에는 존재하지만 코드페이지에 없는 플래그들을 아래와 같이 자동으로 켜줍니다.

제가 위에 첨부한 소스코드가 하는 일은, 이 플래그들을 TTF 파일에서 활성화시키는 것입니다.
추후 계획
의도하지 않은 폰트 fallback 현상이 발생한다는 내용의 이슈를 Pretendard 공식 Github에 올릴 예정입니다.
[2025-11-11]
https://github.com/orioncactus/pretendard/issues/234
Pretendard JP를 MacType과 noMeiryoUI를 사용하여 윈도우즈 시스템 폰트로 적용했을 때 일부 UI에서 의도
안녕하세요, 우선 이렇게 멋진 폰트를 만들어주시고 기여해주신 분들께 감사함을 표합니다. 저는 최근에 MacType과 noMeiryoUI 프로그램으로 Pretendard JP를 윈도우 시스템에 적용하여 사용하고 있습니
github.com
이슈를 올렸습니다. 이것이 받아들여질지 안 받아들여질지는 잘 모르겠습니다. Pretendard JP의 코드 페이지에 해당 폰트가 지원하는 모든 언어의 플래그를 활성화하지 않은 이유가 따로 있을 수도 있습니다.
다른 알려진 문제들
위 문제 뿐만 아니라 Pretendard JP를 적용한 상태에서, 설정에서 'Windows 표시 언어를 영어'로 설정해둔 뒤 '사용지역 언어'를 '영어(미국)'으로 설정하면 작업표시줄의 시계 부분 또는 윈도우 부팅 후 로그인 화면의 시계에서 콜론같이 생긴 기호(:)가 없고 문자가 깨져서 표시될 것입니다.
이것은 일반적인 콜론(U+003A)이 아닌 U+2236이라는 콜론같이 생긴 다른 기호입니다.

위와 같이 Pretendard JP에서는 U+2236 문자가 존재하지 않기 때문에 깨지는 것입니다.
정확한 내용은 다음 글을 참고하세요.
https://www.winhelponline.com/blog/taskbar-clock-colon-missing-windows-10/
수정 (2025-12-08) 시스템 폰트로 되돌리기
원래의 시스템 폰트로 다시 돌아가기 위해 다음 단계들이 필요합니다.
저도 다시 돌아가려고 noMeiryoUI와 MacType만 건들이니까 제대로 안 돌아가지더라고요
1. 레지스트리 원래대로
2. 크롬 폰트 원래대로
3. noMeiryoUI -> 파일 > 시스템 글꼴 설정 및 종료
4. MacType -> Launch manually
5. 설정 -> ClearType 텍스트 조정 -> ClearType 사용 체크박스 체크 -> 다음다음... -> 마침
1번의 경우 원래 레지스트리 상태는 아래와 같습니다

5번의 경우 아래 사진에 보이는 설정으로 들어가면 됩니다.


역시 튜닝의 끝은 순정입니다..
