FontLink功能


1、介紹

  Windows的FontLink功能說明:如果某個字體有不能顯示的字符,就用一些備用字體來替換(熟悉Java的同學,記得fontconfig.properties吧)。這個可以在注冊表里設置。所以如果是使用Windows字體系統的程序,都可以獲得這個功能。如果把一個等寬英文字體的備選字體設為雅黑,那么只要你選擇了那個英文字體,如果有中文需要顯示,就不會出現框框,而是用雅黑來顯示了。

2、操作

  下面以Monaco和微軟雅黑、Menlo和微軟雅黑為例進行說明。

  首先打開regedit,找到:
     HKLM/Software/Microsoft/Windows NT/CurrentVersion/FontLink/SystemLink

  新建字符串鍵Monaco,雙擊輸入:
    MSYH.TTF,205,154
    MSYH.TTF
  新建字符串Menlo,雙擊輸入:
    MSYH.TTF,154,116
    MSYH.TTF

  設置完成,重啟系統,生效

  說明:MSYH.TTF后面的數字205,154代表什么意思?是GDI的scaling factor參數,默認是128,96。Monaco字體寬度是雅黑的1.6倍,乘以1.6得到的就是205,154。

  說明:為什么重復一個沒有數字的MSYH.TTF?GDI+不支持scaling factor參數就會使用第二個值MSYH.TTF。

3、討論

  這個設置還有一個比較好用的地方。例如Vim本身對字體的支持較弱,還不支持非等寬字體。所以如果使用FontLink,直接選擇Monaco作為字體,一切OK。再比如把記事本字體選為Monaco,中文自然就成了雅黑。cmd和PowerShell也類似。

  那么是否都以后的字體設置都省了呢?不是。只有使用Windows本身字體渲染功能的軟件可以使用這個。像Emacs這種自己動手豐衣足食的,本身對字體支持非常完善,比Windows這點小東西強大得多了去了。Java也是自己渲染字體,雖然有點Buggy(例如Swing顯示雅黑粗斜體的時候,居然亂碼,但是normal沒事;我估計現在還是這樣)。

參考文章

  使用Monaco和微軟雅黑字體美化cmd和PowerShell

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM