Що я хочу
Я використовую Consolas
шрифт за замовчуванням свого Notepad ++, але я хочу краще виглядати китайські та японські символи та символи при використанні Consolas
.
Відповідно до статті MSDN , я можу пов’язати кілька шрифтів, щоб Consolas
він міг відображати символи, які він не підтримує самостійно.
Мета
- Відображайте латинські символи за допомогою шрифту
Consolas
- Відображення китайських та японських символів за допомогою
Microsoft YaHei
- Відображати символи, які
YaHei
не вдається використовуватиMeiryo
- Нехай система обробляє інші символи, які
Meiryo
теж не можуть відображатись
Кроки до досягнення мети
- Додати
REG_MULTI_SZ
записConsolas
уHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink
Встановіть значення
Consolas
:MSYH.TTC,Microsoft YaHei,128,96 MSYH.TTC,Microsoft YaHei MEIRYO.TTC,Meiryo,128,85 MEIRYO.TTC,Meiryo
- Вийдіть із Windows, а потім увійдіть знову
Фактичний результат у Windows 7
- Латинські символи (0-9, az, AZ) та символи, що часто використовуються (;: "" тощо), відображаються за допомогою
Consolas
- Китайські та японські символи відображаються за допомогою
Microsoft YaHei
- Спеціальні символи відображаються за допомогою
Meiryo
- Інші символи та символи, які не містять шрифтів вище підтримуваних, відображаються за допомогою системних значень за замовчуванням (idk що це)
Фактичний результат у Windows 10
- Латинські символи (0-9, az, AZ) та символи, що часто використовуються (;: "" тощо), відображаються за допомогою
Consolas
- Китайські та японські символи відображаються за допомогою
Microsoft YaHei
- Спеціальні символи відображаються за допомогою
Segoe UI Symbol
- Інші символи та символи, які не містять шрифтів вище підтримуваних, відображаються за допомогою системних значень за замовчуванням
Додаткова інформація
(Мені потрібно 10 представників, щоб розмістити більше посилань та зображень, тому, будь ласка, натисніть на посилання на зображення, щоб переглянути скріншот результатів тестового випадку та скопіюйте / вставте текст URL, щоб самостійно відвідати сайт)
Ось тест, який намагається зрозуміти охоплення символів шрифтів, згаданих вище (та більше)
Інструмент використаний
- Блокнот:
%WINDIR%/Notepad.exe
- BabelMap:
http://www.babelstone.co.uk/Software/BabelMap.html
Тестовий рядок:
我风おA☃
我(\u6211): A character available in both Chinese and Japanese 风(\u98ce): A Chinese only character お(\u304a): A Japanese only character A(\u0041): A Latin character ☃(\u2603): A unicode symbol
Крок для тестування
- Завантажте програму BabelMap, відкрийте її та скопіюйте тестову рядок у
Edit Buffer
- Виберіть
Single Font
перемикач - Поставте
Simple Rendering
прапорець - Виберіть будь-який шрифт, натиснувши папку вправо на
Single Font
- Поспостерігайте за символом гліфа в
Edit Buffer
- Установіть шрифтове посилання,
Consolas
як було зазначено вище, вийдіть із системи та ввійдіть у систему, щоб набути чинності - Відкрити
Notepad.exe
, відкритиFormat > Fonts
меню для встановлення шрифтуConsolas
- Вставте тестову рядок, а потім спостерігайте за нею
Результати тесту
Пояснення результату тесту
Microsoft YaHei
не може відображати символ сніговикаMeiryo
не мають китайських символівSegoe UI Symbol
містить лише символиYu Gothic
подібний,Meiryo
але виглядає інакшеConsolas
розроблений лише для латинського письма.Текст у
Notepad.exe
відображається за допомогою трьох різних шрифтів:我风お: Microsoft YaHei A: Consolas ☃: Segoe UI Symbol
Ви можете сказати, що це, безумовно,
Segoe UI Symbol
тому, що ці сніговики дуже різні в різних шрифтахОднак у цьому випадку ми очікували
Notepad.exe
відображення цих символів за допомогою таких шрифтів:我风お: Microsoft YaHei A: Consolas ☃: Meiryo
Запитання
- Чому
Meiryo
ми встановили в реєстр шрифтових посилань повністю ігнорується? - Як досягти Цілі в Windows 10?
MEIRYO.TTC
відсутній файл у вашій установці Windows 10?