通过字体映射 Fontlink 美化中文显示

通过字体映射 Fontlink 美化中文显示


声明:以下均是个人见解,非引战
目前最好的编程字体当属 Fira Code 了,而最好的中文字体当属方正兰亭黑了。在 Fira Code - Github 开源上已经有超 5 万人加星。但是 Fira Code 没有加入对中文的支持,而且大多数编辑器没有 双字体设置功能,所以将字体设置成 Fira Code 后,中文会以宋体显示,不美观。
那么有什么方法能同时兼顾中英文,让字体都显示得好看呢?
#使用字体映射(Fontlink)。
Fontlink 是 Windows 采用的一种类似虚拟字体的技术。使用 Fontlink 时,某个字体可以和多个其它的字体建立连接关系。连接后,该字体通常被称作主字体,而其它那些与之连接的字体称作连接字体。例如我们将主字体 Fira Code 映射一个连接字体方正兰亭黑,在输出英文时会以主字体 Fira Code 显示;而在输出中文时,Windows 在主字体 Fira Code 中没有找到支持中文的字体信息,那么会在连接字体方正兰亭黑中继续搜索,显然方正兰亭黑是支持中文的,所以输出中文时会以方正兰亭黑显示,美观多了。
怎么使用字体映射(Fontlink)呢?
通过修改注册表的方式。
按快捷键 Win+R 打开“运行”窗口,输入“regedit”后回车打开“注册表编辑器”,进入路径[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink],在右侧空白处右击–>新建–>字符串值,重命名为“Fira Code Retina”,打开后进行编辑,格式是“xxx.ttf,xxx,128,96”,分别是“字体文件名,字体名,缩放因子高,缩放因子宽”,“缩放因子”可以为空。
这个“缩放因子”是个重点,因为将 Fira Code 映射方正兰亭黑后,默认情况下中文显示是扁的。在网上找了半天也找不出详细的资料,只知道是调节字体缩放(可以理解成高宽比)的,当值为“128,96”时,字体不会被缩放,也就是默认值。

以下是我的折腾记录:

  1. Fira Code Retina 映射方正兰亭黑,不写缩放因子
    Fira Code Retina 映射方正兰亭黑,不写缩放因子
    显示效果(中文是扁的,右方正兰亭黑,下同):
    中文是扁的
  2. Fira Code Retina 映射方正兰亭黑,缩放因子输入“128,96”
    Fira Code Retina 映射方正兰亭黑,缩放因子输入“128,96”
    显示效果(中文特别大):
    中文特别大
    之后不管怎样调节缩放因子的数值,中文不是扁就是特别大。后来突然灵光一闪,如果找一个瘦长瘦长的字体作为连接字体,变扁了后岂不是恰好变成中文标准字形了!遂找到了这款字体——方正兰亭黑长,长这样:
    方正兰亭黑长
    继续折腾。
  3. Fira Code Retina 映射方正兰亭黑长,不写缩放因子
    Fira Code Retina 映射方正兰亭黑长,不写缩放因子
    显示效果(中文有点小):
    中文有点小
  4. Fira Code Retina 映射方正兰亭黑长,缩放因子输入“128,96”
    Fira Code Retina 映射方正兰亭黑长,缩放因子输入“128,96”
    显示效果(中文偏瘦长):
    中文偏瘦长
  5. Fira Code Retina 映射方正兰亭黑长,尝试更改缩放因子数值多次后,输入“114,96”
    Fira Code Retina 映射方正兰亭黑长,缩放因子输入“114,96”
    显示效果(中文终于显示正常):
    中文显示正常

EditPlus:
EditPlus
PowerShell:
PowerShell
至此折腾结束。

使用方法:安装附件中的所有字体后,双击 .reg 文件导入注册表即可
注:我注册的字体是“Fira Code Retina”,该字体加入了对 Emoji 和特殊符号的支持,你也可以改成其它字体
字体和 .reg 文件下载地址:
链接:
字体映射 - 百度网盘
提取码:ztys

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Dustin_Win

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值