能与中文对齐的西文等宽字体

汉字字体普遍采用等宽设计,而西文字体则有比例和等宽两种选择。

此外,在编程环境中,字体选择除了等宽之外,还需要考虑一些额外的要求:

以汉字为代表方块字通常固定 1em 宽,而西文字体的宽度并没有统一的标准。多语言混排的环境中,只有在两者宽度比例关系合适的情况下,才能使字母与汉字对齐。为了方便中文用户选择合适的等宽字体,本文整理了一些常见西文等宽字体与中文的字形宽度比例:

字体名称 中文字形 西文字形 西文宽度 授权 备注1
等距更纱黑体 / Sarasa Mono SC 思源黑体 Iosevka 0.5em 开源 有/无连字多版本
思源黑体HW / Source Han Sans HW SC / Noto Sans Mono CJK SC2 思源黑体 Source Sans Pro 0.5em 开源: Adobe / Google 无字形区分
思源等宽 / Source Han Mono SC3 思源黑体 Source Code Pro 加宽版 0.667em 开源
Source Code Pro 无 Source Code Pro 0.6em 开源
Noto Sans Mono 无 Noto Sans Mono 0.6em 开源 作为 Android fallback 字体的等宽字体,部分 Linux 发行版也有预装。无编程连字。
文泉驿等宽微米黑 / Wenquanyi Micro Hei Mono Droid Sans Fallback Droid Sans Mono 0.6em 开源 两种远古时期 Android 默认字体的拼接,无字形区分
Roboto Mono 无 Roboto Mono 0.6em 开源 当前 Android 默认等宽字体。无编程连字。
Maple Mono CN 资源圆体 间距加宽版4 Maple Mono 0.6em 开源 可选NF图标、hinted / unhinted、以及多种连字预设版本
新晰黑 Code / NeoXiHei Code 霞鹜新晰黑 Migu 1M 0.5em 开源
LXGW Bright Code 霞鹜文楷 Lite Monaspace Argon 缩窄版 0.5em 开源 NF图标
Monaspace Neon / Argon / Xenon / Radon / Krypton 无 Monaspace Neon / Argon / Xenon / Radon / Krypton 0.6~0.75em 开源 编程连字。字重、斜度、宽度三轴可变。
DejaVu Sans Mono 无 DejaVu Sans Mono 0.602em 开源 部分 Linux 发行版预装。无编程连字
Fira Code 无 Fira Code 0.6em 开源 编程连字
Hack 无 Hack 0.6em 开源
JetBrains Mono 无 JetBrains Mono 0.6em 开源 编程连字
Inconsolata 无 Inconsolata 0.5em 开源 编程连字
Ubuntu Mono 无 Ubuntu Mono 0.5em 开源 Ubuntu 默认等宽字体旧版
Ubuntu Sans Mono 无 Ubuntu Sans Mono 0.56em 开源 Ubuntu 默认等宽字体。新版字形加宽,比例更和谐了,但不再能与中文对齐
Cascadia Code 无 Cascadia Code 0.586em 开源 Win11 预装,终端和 Visual Studio 的新一代默认字体。提供有连字 (Code) / 无连字 (Mono) 双版本。
Cascadia Next SC Cascadia Next SC Cascadia Next 0.5em 开源 2024年放出的一个试验版本,收录了常用的CJK字符
Consolas 无 Consolas 0.55em 专有 Windows 预装的上一代编程字体
Courier New 无 Courier New 0.6em 专有 几十年来 Windows / macOS 都预装的 web 安全字体
Lucida Console 无 Lucida Console 0.6em 专有 Windows 预装
SF Mono 无 SF Mono 0.6em 专有 macOS / iOS 默认等宽字体
Monaco 无 Monaco 0.6em 专有 macOS / iOS 预装
Menlo 无 Menlo 0.6em 专有 macOS / iOS 预装
PT Mono 无 PT Mono 0.6em 专有 macOS / iOS 预装
Google Sans Code 无 Google Sans Code 0.6em 开源 Gemini 和 Android Studio 的等宽字体
Intel One Mono 无 Intel One Mono 0.62em?5
开源 编程连字

你也可以使用下面的工具预览上述字体的外观,其中 Cascadia Code, Cascadia Mono, Fira Code, Google Sans Code, Inconsolata, JetBrains Mono, Noto Sans Mono, PT Mono, Roboto Mono, Source Code Pro, Ubuntu Mono, Ubuntu Sans Mono 十二款字体可以调用托管于 Google Font 的 webfont,其余字体只有在本地已安装的前提下才能调用。


------
一二三四五六七八九十一二
12345678901234567890
1ilIL  oO0
== != >= =>
!! ?? && ||

  1. 字形区分未提及即默认具有,编程连字以及其他特性均会说明 ↩

  2. 注意:Noto Sans Mono CJK 的西文既不是 Noto Sans Mono,也不是 Source Code Pro ↩

  3. 思源等宽没有对应的 Noto 版本 ↩

  4. 与其他内置中文的编程字体不同,Maple Font并没有缩窄西文宽度,而是增加中文间距实现1:2对齐。故无法自由搭配其他中文字体,但可任意组合其他0.6em宽的英文字体实现1:2对齐。 ↩

  5. Intel One Mono 的网格理论上是 0.6em,但经测试 v1.4 版本在 VS Code 中渲染的实际宽度比 0.6em 略宽,原因不明 ↩