Windows 的字体渲染
2027 年了,有什么方法依然可以用来改进 Windows 字体渲染效果?
这些年,社区里出现过不少改善 Windows 字体显示效果的方案,例如 MacType、noMeiryoUI,以及移除字体中的 Hinting 信息等。
Hinting 是什么?
在低屏幕分辨率或小字号下,矢量字体的线条常常会落在两个像素之间,导致笔画模糊、粗细不均或变形。
Hinting 会告诉渲染引擎如何微调这些笔画和端点,让字体在小尺寸下依然边缘清晰、易于阅读。
微软雅黑的 Hinting 据说是逐字人工微调的,造价非常高。
这项技术在低分辨率屏幕时代尤其重要,但同时也会让部分字形可能偏离原本的设计比例,出现笔画粗细不均、字形细节被改变等现象。
如何移除 Hinting
2019 年,少数派作者曾经发表过一篇关于 Windows 字体渲染优化的 文章,其中介绍了一种通过处理系统字体、移除 Hinting 信息来改善显示效果的方案。
文章讨论了 Windows 10 1909 的字体显示问题:在 150% 以下的缩放比例下,部分字号的字体渲染表现不理想。
移除 Hinting 信息后,在一些显示环境下,这样能够获得更均匀的笔画和更自然的字形。
文中推荐使用 系统字体替换工具 替换系统字体。这也是本文采用的方案。
新雅黑 Noble Scarlet
2017 年 10 月,微软在 Windows 10 Insider Preview 释出了新版的微软雅黑 11.3 Noble Scarlet,它还有一个比较有意思的中文名字:堕朱砂。
相比传统版本的微软雅黑,Noble Scarlet 字重更加丰富,调整了字形比例,中宫收窄、字距加大、重心更协调。
不过,它最终并没有正式推出,微软在后续更新换回了旧版的雅黑。可能是砍刀部再次发力。
远景论坛的 @碧海潮声 在微软的测试版字体基础上补充和完善,持续迭代新雅黑。这也是本文字体来源。
最终组合
这次处理的字体主要分为三个部分。
第一部分:Windows 10 原版字体
从 Windows 10 最终版本中提取系统字体,按照上面少数派文章的思路去除 Hinting。
得到一套 Windows 10 原版字体的无 Hinting 版本。
第二部分:Noble Scarlet
获取微软雅黑 11.3 字体文件,移除 Hinting。
得到 Noble Scarlet 无 Hinting 版本。
第三部分:Inter 生成 Segoe UI
使用 Inter 字体作为基础,按照 ZH-Font-Replacement 项目提供的方案生成 Segoe UI 替代字体。
得到替换 Segoe UI 的 Inter 字体。
下载地址:
https://wwary.lanzoub.com/b01i5z4d4h 密码:80gw
内容如下:
noble_scarlet.zip:新版雅黑 Noble Scarlet。ms_yahei.zip:Windows 10 最终版的原版雅黑无 hinting 版本。inter.zip:由 Inter 生成的 Segoe 替换字体。windows_10_font.zip:Windows 10 最终版本的其他无 hinting 系统字体。
替换步骤
字体替换涉及系统文件,操作前务必做好备份,并保留原始字体以便恢复。
- 使用上面的 系统字体替换工具 替换对应的组合中的字体。
Windows 10:
noble_scarlet + inter + windows_10_fontWindows 11:
noble_scarlet + inter(其他系统字体等待补齐,等我下次需要提取的时候顺手弄一下。)
如果不喜欢新雅黑,可以将 noble_scarlet 更换为原版雅黑 ms_yahei。
对于新雅黑
noble_scarlet的新增三个字重不需要替换,直接右键为所有用户安装即可。替换完成后,建议重新运行 Windows 的 ClearType 文本调整向导,根据自己的显示器进行校准。
实际使用体验
这套字体组合的主要目标是改善非高分屏环境下的文字显示效果。
从实际使用感受来看,处理后的字体在非高分屏上表现更自然,部分字号下笔画更加均匀,文字整体的视觉观感也更舒服。
新版微软雅黑的多级字重也是一个非常明显的提升,视觉层次会更加丰富。
浏览器设置
浏览器访问的网页中日文、韩文和繁体中文可能会因为字体选择不同而出现不统一的显示效果。
可以尝试将浏览器中对应语言的字体设置为微软雅黑,效果更加好。
相关资料: