Fontlink (FontLink / SystemLink trong sổ đăng ký) không hoạt động như mong đợi trong Window 10 x64


13

Những gì tôi muốn

Tôi sử dụng Consolaslàm phông chữ mặc định của Notepad ++, nhưng tôi muốn xuất hiện tốt hơn các ký tự và ký hiệu của Trung Quốc và Nhật Bản khi sử dụng Consolas.

Theo bài viết của MSDN , tôi có thể liên kết nhiều phông chữ để Consolasnó có thể hiển thị các ký tự mà nó không hỗ trợ.

Mục đích

  • Hiển thị các ký tự Latin bằng phông chữ Consolas
  • Hiển thị các ký tự Trung Quốc và Nhật Bản bằng cách sử dụng Microsoft YaHei
  • Hiển thị các biểu tượng YaHeikhông thể xử lý bằngMeiryo
  • Hãy để hệ thống xử lý các ký tự còn lại Meiryokhông thể hiển thị

Các bước để đạt được mục tiêu

  1. Thêm một REG_MULTI_SZmục ConsolastrongHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink
  2. Đặt giá trị của Consolas:

    MSYH.TTC,Microsoft YaHei,128,96
    MSYH.TTC,Microsoft YaHei
    MEIRYO.TTC,Meiryo,128,85
    MEIRYO.TTC,Meiryo
    
  3. Đăng xuất Windows, sau đó đăng nhập lại

Kết quả thực tế trong Windows 7

  1. Các ký tự Latinh (0-9, az, AZ) và các ký hiệu thường được sử dụng (;: '", v.v.) được hiển thị bằng cách sử dụng Consolas
  2. Ký tự Trung Quốc và Nhật Bản được hiển thị bằng Microsoft YaHei
  3. Biểu tượng đặc biệt được hiển thị bằng cách sử dụng Meiryo
  4. Các ký tự và ký hiệu khác không có phông chữ nào hỗ trợ ở trên được hiển thị bằng cách sử dụng mặc định của hệ thống (idk đó là gì)

Kết quả thực tế trong Windows 10

  1. Các ký tự Latinh (0-9, az, AZ) và các ký hiệu thường được sử dụng (;: '", v.v.) được hiển thị bằng cách sử dụng Consolas
  2. Ký tự Trung Quốc và Nhật Bản được hiển thị bằng Microsoft YaHei
  3. Biểu tượng đặc biệt được hiển thị bằng cách sử dụng Segoe UI Symbol
  4. Các ký tự và ký hiệu khác không có phông chữ nào hỗ trợ ở trên được hiển thị bằng mặc định hệ thống

Thông tin bổ sung

(Tôi cần 10 đại diện để đăng thêm liên kết và hình ảnh, vì vậy vui lòng nhấp vào liên kết hình ảnh để xem ảnh chụp màn hình kết quả trường hợp thử nghiệm và sao chép / dán văn bản url để tự truy cập trang web)

Dưới đây là một thử nghiệm để cố gắng hiểu phạm vi bao phủ ký tự của các phông chữ được đề cập ở trên (và hơn thế nữa)

Công cụ được sử dụng

  • Sổ tay: %WINDIR%/Notepad.exe
  • Bản đồ Babel: http://www.babelstone.co.uk/Software/BabelMap.html
  • Chuỗi kiểm tra: 我风お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
    

Bước để kiểm tra

  1. Tải xuống BabelMap, mở nó, sau đó sao chép chuỗi thử nghiệm vào Edit Buffer
  2. Chọn Single Fontnút radio
  3. Kiểm tra Simple Renderinghộp kiểm
  4. Chọn bất kỳ phông chữ nào bằng cách nhấp vào hộp thả xuống ngay Single Font
  5. Quan sát ký tự glyph trong Edit Buffer
  6. Thiết lập liên kết phông chữ Consolasnhư đã đề cập ở trên, đăng xuất / đăng nhập để có hiệu lực
  7. Mở Notepad.exe, mở Format > Fontsmenu để đặt phông chữ thànhConsolas
  8. Dán chuỗi kiểm tra vào sau đó quan sát nó

Kết quả kiểm tra

Thử nghiệm so sánh kết quả

Kết quả kiểm tra Giải thích

  • Microsoft YaHei không thể hiển thị biểu tượng người tuyết
  • Meiryo không có chữ Hán
  • Segoe UI Symbol chỉ chứa các ký hiệu
  • Yu Gothictương tự Meiryonhưng trông khác
  • Consolas được thiết kế chỉ dành cho chữ viết Latin.
  • Văn bản trong Notepad.exeđược hiển thị bằng 3 phông chữ khác nhau:

      我风お: Microsoft YaHei
      A: Consolas
      ☃: Segoe UI Symbol
    

    Bạn có thể nói rằng đó chắc chắn là Segoe UI Symbolbởi vì những người tuyết đó rất khác nhau trong các phông chữ khác nhau

    Tuy nhiên, trong trường hợp này, chúng tôi dự kiến ​​sẽ Notepad.exehiển thị các ký tự đó bằng các phông chữ như thế này:

      我风お: Microsoft YaHei
      A: Consolas
      ☃: Meiryo
    

Câu hỏi

  • Tại sao Meiryochúng ta thiết lập trong sổ đăng ký fontlink hoàn toàn bị bỏ qua?
  • Làm cách nào để đạt được Mục tiêu trong Windows 10?

1
Là tập tin MEIRYO.TTCbị thiếu trong cài đặt Windows 10 của bạn?
HackSlash


Theo một báo cáo , một số vấn đề về phông chữ đã được giải quyết với KB4476976 . Bạn đã cài đặt nó chưa?
harrymc

Câu trả lời:


1

Microsoft đã quyết định xóa một số phông chữ trong Windows 10, một trong số đó là Meriyo

https://docs.microsoft.com/en-us/windows/deployment/windows-10-missing-fonts

Điều này có thể được xác nhận bằng cách quan sát HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ FontLink \ SystemLink

Nó phải có trong Windows 7 theo mặc định và sẽ không có trong Windows 10

Bạn có thể cài đặt tệp ttc Meriyo trên máy của mình bằng bất kỳ bước nào


Nếu bạn từng nghĩ trước khi đăng, bạn sẽ nhận thấy rằng nếu một phông chữ không được cài đặt, thì không có glyph nào của nó có thể được hiển thị như những gì được hiển thị trong test result.
Byzod
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.