방금 업무용 PC에서 XP를 Win7로 전환했는데 이상한 점을 발견했습니다.
"Courier", "Terminal" 및 "System"(예: "문자표"의 "Font" 드롭다운에 아이콘이 없는 문자)과 같은 시스템 글꼴에서 일부 '정의되지 않은' 문자가 누락되었습니다.
문자 코드 0x81, 0x8D, 0x8F, 0x90 및 0x9D는 이러한 글꼴의 XP 버전에서 작은 사각형을 갖지만 Win7에서는 비어 있습니다(너비 0).
왼쪽 [Alt] 키를 누른 채 숫자 키패드에 4자리 십진수 값(각각 0129, 0141, 0143, 0144 및 0157)을 입력하고 [Alt] 키를 놓아 메모장에서 이러한 문자를 '입력'할 수 있습니다. ] 열쇠. XP에서는 빈 사각형이 나타나고, Win7에서는 너비가 0인 문자가 나타납니다. 아무 것도 표시되지 않지만 화살표로 커서를 움직이면 '무언가'가 있다는 것을 알 수 있습니다.
물론 지금쯤이면 버그였다면 누군가 눈치챘겠죠? 그들은 왜 사라진 걸까요?
나는 종종 프랑스어 사용자를 위한 배치 파일(.bat)을 작성하고 악센트 문자 입력(및 상자 그리기 문자)을 단순화하기 위해 DOS 문자와 이에 상응하는 Windows 문자로 파일을 만들었기 때문에 이것을 발견했습니다. 누락된 문자 모양은 DOS 문자 ü, ì, Å, É 및 ¥에 해당합니다.
답변1
문자 모양이 없으면 표시가 "정의되지 않음"이라고 주장하겠습니다. 즉, 동일하다고 믿을 수 없다는 의미입니다. Windows 7에서는 다른 Zero-width 문자를 더 잘 지원하기 위해 글꼴 렌더링을 변경했을 수 있습니다. 변경을 수행한 내부 Microsoft 팀 외에는 누구도 이를 알고 있을지 의심스럽습니다.
나는 진정한 DOS가 내 시대보다 약간 앞섰다는 것을 인정하지만 현재의 모든 글꼴(Courier 및 Terminal 포함)은 설명된 문자 ü, ì, Å, É 및 ¥를 내부에 표시되는 경우를 포함하여 0xDC, 0xEC, 0xC5, 0xC9 및 0xA5로 매핑합니다. cmd.exe(실제 DOS가 아님). 이 때문에 정확히 무엇을 하고 있는지, 어떤 글꼴이 어디에 사용되는지에 대해 내가 놓친 퍼즐 조각이 있다고 추측합니다. ('시스템'이라고 표시된 글꼴에는 설명하는 위치에 문자 모양이 있는 것을 알 수 있습니다. 아마도 CMD.exe 창의 글꼴을 적절한 문자 지원 기능이 있는 글꼴로 변경하시겠습니까?)