在很長的一段時間內,Visual Studio 2003/2005的代碼編輯器中的編輯字體設置,對中國的程序員來說,是一個撓頭的問題。許多人在代碼編輯器中使用的無非是宋體、新宋體,有的安裝了Office套件后使用的是幼圓。
但是我們使用的是代碼編輯器,輸入英文代碼的數量遠遠大于輸入中文,而中文字體內包含的英文字符又實在是難看,要不在設定中使用英文字體,忍受難看的中文字符,要不使用中文字體,英文顯示非常不美觀。
出現這種情況的原因就是Visual Studio 2002/2003/2005 中的代碼編輯器只能設定一種字體,而不能設定中文顯示用XX字體,英文顯示用YY字體。
那么最終只有一種解決辦法,就是把英文字體和中文字體合并成一個字體。我經常想,如果有這么一種字體,其中中文字符使用的是新宋體,而字體內的英文和標點符號使用的是Courier New,就好了。我在互聯網中尋找了很長時間,一直沒有找到。
現在好了,昨晚我找到一個工具,可以自己編輯你喜歡的字體,它的功能就是編輯新字體,可以把已有的多個字體文件中一部分字符復制出來,然后合并成一個新字體文件。大家看看我的VS2005代碼編輯器的抓圖:

大家可以看到,上面圖片是VS2005 C# 代碼編輯器的抓圖。很明顯,上面的代碼編輯器的字體使用了兩種不同的字體:中文字體使用的是“微軟雅黑”,英文字體使用的是 “Courier New Bold”。
大家一定懷疑,我是否是修改注冊表或者修改了VS2005的編輯器。這里可以告訴大家,我沒有修改任何東西,我僅僅是使用了一個名為”Visual Studio Code Editor Font”的ttf文件而已,如下圖:

可以看出,上面的字體不是微軟附帶的字體,也不是網上下的字體,而是我自己制作的字體。其中的英文與標點符號是Courier New Bold,中文是微軟雅黑。使用的軟件名稱是 Font Creator 5.0 的一個軟件。
這個軟件可以使你打開任意數量的 TTF (字體文件),顯示其中的所有字符(包括中文字符),并且可以在打開的字體文件中任意復制粘貼任意數量的字符。
使用方法如下:
1 選擇你喜歡的中文字體文件作為模板,我選擇的是微軟雅黑字體(msyh.ttf)。
2 選擇你喜歡的英文字體文件,這里我選擇的是Courier New Bold字體(courbd.ttf)。
3 把這兩個文件從 %SystemRoot%\Font 文件夾內復制到你指定的新文件夾內。
4 修改msyh.ttf 的文件名,一定要取一個與Windows文件夾內Font目錄中獨一無二的名稱。
5 打開Font Creator 5.0 ,打開msyh.ttf(時間可能很長)。
6 打開 courbd.ttf 。
7 選擇窗口,把兩個窗口并列顯示。
8 把Courier New Bold 字體內所有的英文字符,標點符號,還有空格等字符,使用復制粘貼的方式覆蓋掉微軟雅黑字體中相同位置的字符/符號。
9 檢查幾次,確認沒有錯誤后,單擊保存,保存字體,并把Courier New Bold 字體窗口關閉。
10 選擇“Format”菜單中的“Naming”項,顯示出字體名稱。因字體屬性中除了字體文件名外,主要分辨字體方式是字體的Family Name,而我們是以“微軟雅黑”作為模板的,所以必須修改這些名稱,使自己的字體名與微軟雅黑不同,否則與微軟雅黑字體名稱沖突,無法安裝到系統的Font 文件夾內。
11 修改好后,關閉程序。
12 使用系統資源管理器打開Windows\Font 目錄,并安裝字體。
13 打開VS,在工具--> 選項 --> 字體和顏色 --> 編輯器字體 中選擇你建立的字體名。
14 成功。
需要注意的問題:
1 注意,修改字體必須以中文字體為模板,即修改的字體文件是中文字體文件,然后打開一個你喜歡的英文字體文件,把英文文件中的英文字符復制并粘貼到中文字體文件的對應字符位置中。這樣工作量小,無非是大小寫a-z字母,0-9數字,還有一些! @ # $ 符號。
2 在復制過程中,中文字體的字符位置與英文字體的字符位置是不一樣的,在Font Creator中每個字符都有一個名稱(Unicode標準名),這個名稱對于所有字體中的ASCII字符是相同的,所以必須確認兩個字符名絕對等同,否則字符復制錯誤,顯示的就是錯字了。
3 Font Creator 使用時需要的內存量極大,我的計算機1G內存,在打開/保存/測試字符時,有很小一段時間程序沒有反應,這是正常的,你可以干別的事。
4 Font Creator 5.0 可以到Google中搜索,我是在華軍軟件中下的(不是廣告)。
好,教程說完了,現提供我自己制作的字體(壓縮后大小8兆)英文是Courier New Bold ,中文是微軟雅黑。
博客園上傳文件被設定不得大于1.95兆,我的文件有8兆,無法上傳,誰提供我一個FTP或幫忙上傳到博客園,謝謝!~
注:
微軟雅黑可能有人不知道,它是微軟在Vista中包含的下一代主打中文字體,被人從Vista中提取并修改,使之可以在WindowsXP中使用,可以到Google中搜索“微軟雅黑5.0”,即可下載。
update 1 :\>
1 我把我當前使用的字體上傳了,字體使用的是微軟雅黑作為中文字體, Courier New Bold (即Courier New 的粗體)作為英文顯示。請大家下載,因上傳文件大小限制,分成兩個壓縮包。
[占位符:正在上傳新文件,原文件已刪除,請等待...]
2 我本想使用宋體字和Courier New 字體做一個字體包,給喜歡宋體字的朋友,但是我的計算機中的宋體字體文件不是TTF(True Type Font/Format)而是TTC (True Type Collections),而Font Creator 無法編輯TTC格式文件,請需要宋體的朋友在網上尋找 simsun.ttf 文件,自行修改。
3 上面提供的vscode.ttf文件,使用的是Courier New Bold ,它是Courier New 粗體格式,我現在正在做微軟雅黑 + Courier New 字體,給明天可以提供下載。
再次希望喜歡自定義字體的朋友,去下載Font Creator,可以自己定義自己的VS代碼編輯器字體,并提供下載謝謝!