本文轉自:https://howiezhao.github.io/2018/09/23/code-font/
等寬字體與比例字體
等寬字體(Monospaced)是指字符寬度相同的電腦字體,與此相對,字符寬度不盡相同的電腦字體稱為比例字體(Proportional)。一圖勝千言,如下:
在早期的電腦中,由於技術的局限,無法進行字母寬度的比例調整,因此只能將每個字符都制作成一樣的寬度,從而形成了等寬字體。在等寬字體中,字母 i
,j
顯得兩側余白較多,而字母 w
,m
等的筆畫顯得相當擁擠。但是隨着圖形用戶界面主流的更新和計算機技術的提高,處理比例字體的局限性得到了突破,因此現在排版上顯得比較自然的比例字體的使用已經相當普及。這里所討論的都是英文字體,對於中文字體而言,一般認為它們都是等寬的。
Windows 中常用的等寬字體為 Consolas;macOS 中常用的等寬字體為 Menlo;Linux 中常用的等寬字體為 Mono。
襯線字體與非襯線字體
顧名思義,襯線體(Serif)和無襯線體(Sans-Serif)的區別就在於有無襯線,而襯線則指的是字形筆畫末端的裝飾細節部分。一圖勝千言,如下:
這里所討論的都是英文字體,對於簡體中文字體而言,習慣性稱襯線字體為宋體,非襯線字體為黑體,如下:
襯線字體常用於印刷業,而且特別適用於長篇文章段落;非襯線字體簡潔大方,適用於廣告、標志、牌子等短句。另外,系統、程序和網頁中的字體也幾乎都是非襯線字體,即使是很長的段落,這是因為顯示器分辨率低,字體不能減小,如果用襯線字體,那些邊邊角角就很難用像素顯示清楚,結果反而不利於閱讀。
Google 在 2015 年就將其原本的襯線體 Logo 換成了無襯線體 Logo:
我們在寫 Word 文檔時,常用的英文襯線字體就是 Times New Roman;而在做 PPT 時,個人傾向於使用非襯線字體微軟雅黑。
編程
寫代碼應該使用的字體對於襯線或非襯線要求不大,但強烈建議使用等寬字體,這樣可以便於代碼對齊,因為比例字體的寬度不定,這會對代碼對齊造成極大的困難。另外,還應該對特殊字符有較高的辨識度,比如 I
(大寫 i
)、l
(小寫 L
)、1
(數字 1
),0
(數字 0
)、O
(大寫 o
) 等。最后,中文字符的寬度應該嚴格是英文字符寬度的 2 倍,在某些時候,你會發現這很有用。
基於以上,個人傾向於使用 be5invis 開發的 Sarasa-Gothic(更紗黑體) 系列字體,它的前身便是 Inziu Iosevka 系列字體,現在已經遷移至 Sarasa-Gothic,推薦使用其中的 Sarasa Term SC 型字體。此外,這一系列字體都是開源免費的。
術語
在下載某些字體時,可能會遇到相關術語,如下:
- mono:即 Monospaced,等寬字體
- sans:即 Sans-Serif,無襯線體
- gothic:哥特體,即無襯線體
- bold:粗體
- italic:斜體
- bolditalic:加粗斜體
- regular:常規體
- sc:即 Simplified Chinese,簡體中文
- tc:即 Traditional Chinese,繁體中文
- cl:即 Classical Literature,《康熙字典》字形
- j:即 Japanese,日文
- ligature:連體字符,舉例來說,會把
!=
變成≠
配色
關於代碼配色,就真是個“仁者見仁,智者見智”的問題了,個人要求滿足以下兩點:
- 采用黑色背景
- 官網提供多種編輯器的支持
綜上,個人傾向於使用 Dracula 。