之前的一篇文章中我提到过怎么更换Windows11的系统字体,
如果你不想看下面一大段的完整教程,可以直接去那篇图文[流汗滑稽]
不过其中一个至关重要的步骤是把其他字体伪装成微软雅黑,我原以为这个步骤应该很简单,所以就没怎么管,可是深究了一下发现并不是[受虐滑稽],所以我打算在这篇文章里细讲一番如何伪装字体。
前排提示:
1.伪装字体理论上只能自用!请尽量使用开源、免费的字体进行修改,降低法律风险。
2.虽然全局替换字体后我的电脑并未出现任何问题,所有应用也运行正常,但这并不代表你的电脑也不会出问题!请备份Windows字体文件后再做尝试。
⚠️⚠️⚠️备份字体⚠️⚠️⚠️
将C盘Windows文件夹下的fonts文件夹中的微软雅黑三个基本ttc文件复制一份,放到其他地方
你的电脑里可能没有“微软雅黑 Black”和“微软雅黑 Medium”这两个文件,因为它们不是系统自带的字体,是我之后另外安装的,备份时只需备份后面三个基本文件即可。
好了,接下来正式开始我们的教程。
首先伪装字体绝对不是右键重命名那么简单,我们需要用到字体编辑工具。我使用的工具是Fontcreator,这个软件是付费的,当然你也可以自己找学习版,或者使用开源的fontforge也行。
要伪装字体,首先有几个概念需要了解清楚:族,字重,以及ttf和ttc格式。
以微软雅黑为例,“微软雅黑”就是一个中文族名,某个字体中的族信息是“微软雅黑”,那么Windows都会把它归结到微软雅黑。
如图。
可以看到,微软雅黑这个族下有三个基本的ttc文件,每一个ttc文件相当于一个ttf字体集合。
我这里还有两个“微软雅黑 Black”和“微软雅黑 Medium”是另外安装上去的,如果你的电脑没有安装或替换过字体,那么只应该有后面三个ttc文件。
我们用fontcreator将ttc文件解包之后会得到两个标题分别为“微软雅黑”和“Microsoft YaHei UI”的ttf文件。
*注意,这里的“标题”才是ttf字体的真实名称,它不是ttf文件的名称,也不是族名称,重命名ttf文件不会改变这一信息。这也是为什么直接右键重命名没有用的原因。如果你还不能理解,那么再来看看解包“微软雅黑 细体”这个ttc后得到的其中一个ttf文件的属性:
看到了吗,它的标题是微软雅黑 light,但仍然属于微软雅黑这个族。
而字体名称中的后缀:light,regular,bold等等则是表示字重。字重想必大家都清楚是什么意思吧,不清楚的看图:
我们将所有的ttc文件全部解包,就可以清楚地发现整个微软雅黑字体的结构是这样的:
再次说明,上图中的ttf那一层都是ttf字体的“标题”,不是ttf文件的名字,ttf文件名在解包时会根据ttc文件的文件名加个后缀重新命名。
在ttc和ttf文件中,ttf文件的名字不重要,可以随意重命名,重要的是其内部包含的字体名称信息,也就是上面的“标题”。但ttc文件的名字却很重要,因此我们需要准备三个名称分别为msyh.ttc msyhl.ttc msyhbd.ttc 的伪装文件,其中包含了伪装成微软雅黑ttf文件的字体,这三个文件共同组成了一个伪装字体包。
现在我们来看看之前我分享过的苹方伪装字体包:
这个字体包就含有msyh.ttc,msyhl.ttc和msyhbd.ttc三个文件,另外两个则是额外的用于替换宋体的字体文件。
了解这些结构之后我们才能开始选择替代的字体和开始伪装。
替代的字体至少需要3个ttf文件,而且为了保证替换字体后的显示效果,每一种字体的字重应该与原来雅黑字体的字重相对应。
至于为什么只需要3个ttf文件而不是6个呢,那是因为微软雅黑这一族的每一个ttc下包含的ttf字体除了标题外都是一样的,一个英文标题(Microsoft YaHei UI),一个中文标题(微软雅黑)。
另外,我们选择的替换字体必须同时包含中文和西文,并且要尽可能包含更多的字符,以避免替换后出现显示不全的状况。
什么是西文?顾名思义,除中文之外的都叫西文[受虐滑稽][受虐滑稽]别骂我,真的是这样的。
综上,我个人更推荐优先选择一些互联网大厂推出的官方免费字体,如OPPOSans,HarmonyOS Sans,MISans,苹方,以及一些知名字库的免费字体,如方正,汉仪等,这些知名度较高的字体包含的字符更全面,像OPPOSans就有226003个字符,覆盖21个国家语言共11个语种。
这里我们以OPPOSans为例,一步步地进行字体伪装操作。
官方下载的OPPOSans包含五个ttf文件
根据上文字重需要逐一对应的要求,我们只需要其中的R,B,L三个后缀的ttf文件就可以了
我们先来制作regular字重的ttc文件,也就是图示的这个文件,regular就是常规的意思,所以这个字重的ttf字体标题没有后缀,就叫微软雅黑,但它和族名称“微软雅黑”是不一样的!前者包含了字重信息,后者就是族名称。
在电脑上的位置是这里
我强烈建议你将这三个基本的微软雅黑ttc文件复制出来放到别的位置,这既是为了备份,也是为了方便操作。
第一步是将ttc文件解包为ttf文件。
打开fontcreator,选择“文件”,“打开”,然后选择这个ttc文件,软件就会提示解包,点击下一步即可。
一切顺利的话,你就会解包出这两个ttf来
然后再用fontcreator打开这两个文件和准备替换的OPPOSans-R.ttf,一共三个文件全部打开
第二步:用OPPOSans-R里的字符替换掉msyh_0和msyh_1里的字符。
选择OPPOSans-R的窗口,按住ctrl和A键全选所有字符,然后右键复制
然后再选择msyh_0的窗口,为了防止替换过后的字符错位,我们先单击一下.notdef这一个框,也就是左上角这个框
然后在在“编辑”这一栏选择“特殊粘贴”:
注意,在弹出的窗口中,勾选“字码点”,然后选择“更换相同字码点”,之后点击确定替换。如果不进行上述操作,你输出的字体依然会错位!
完成之后,我们再比较一下两份字体,确保没有发生错位问题:
检查无误后,选定已经替换完字符的msyh_0窗口选择“文件”——“输出字体”——“输出电脑字体”
文件类型改为ttf,名字随便起一个,我这里为了方便区分就取了这种名字。点击保存即可
输出字体需要一些时间,请耐心等待
输出完成之后,你就应该得到一个已经替换好了的ttf文件:
我建议你用字体查看器检查一下这个字体:
可以看到没有问题。如果你在进行特殊粘贴时,忘了选择“更换相同的字码点”,就会输出这样一份奇怪的东西:
所以不要搞错了![受虐滑稽]
进行到这一步,别忘了当时Regular字重的微软雅黑我们解包出了两个ttf文件:
刚才我们只完成了第msyh_0的替换,现在对msyh_1重复一遍第二步的操作,我就不再重复了。完成之后,就应该得到两个已经替换完毕的ttf文件。
第三步:将ttf重新打包为ttc
由于目前我在fontcreator里始终找不到合成ttc的选项,所以这个步骤我们换用开源工具fontforge进行,关于fontforge如何安装、怎么汉化之类的问题,这个自己百度应该能解决吧,我就不赘述了。
用fontforge同时打开两个替换完成的ttf文件,任意点开一个窗口的“文件”,就可以生成ttc文件了
*点击generate就会在当前目录下生成ttc文件
然后再将生成的ttc文件重命名为msyh.ttc,现在,我们就得到了一份伪装成微软雅黑regular字重的OPPOSans-R字体
请务必检查一下这个ttc文件是否有中文和英文两个字体标题!右键打开属性,点开详细信息即可检查
因为fontforge有概率出现ttc合成失败的bug,假如我们用只含一个ttf文件的ttc文件去替换系统字体,那么就会导致要么西文显示不了,要么中文显示不了,后果相当严重,所以一定要检查清楚!
检查无误的话,这个ttc就算是制作完成了。
当然,目前还只是完成了三分之一,也就是“常规”的字重。再来看看这张图:
还有msyhbd.ttc和msyhl.ttc两份ttc文件等着我们去制作呢。不过相信聪明的你已经学会了该怎么制作伪装ttc文件了吧?我就不再重复了[受虐滑稽]。
另外,你也可以单独伪装某一个字重的ttc,然后单独替换某一个字重的字体。
比如之前一篇帖子中有很多酷友反应鸿蒙字体包中的微软雅黑细体太细了
那么你就可以挑一个稍微粗一点的字体来单独制作msyhl.ttc这个伪装文件,之后再用命令单独替换即可。
好了,现在我们假设你已经制作好了三个伪装的ttc文件
我们将这三个ttc文件放到一个文件夹里,文件夹的名字不能为中文,将这个文件夹拷贝到c盘。
例如,我给文件夹起的名字是Fonts
之后打开设置,选择系统——恢复——高级启动——立即重新启动
重新启动后你应该会进入一个Metro风格的界面,在此处选择“疑难解答”
之后选择“高级选项”
之后选择“命令提示符”
然后你会进入到这个界面。
注意,这里前面的盘符不是C盘也没关系,因为高级启动里的内容本来就不在C盘
然后在命令提示符中输入以下指令并回车(注意空格和大小写)
XCOPY C:\你的字体文件夹的名字 C:\Windows\Fonts
比如我就应该输入:
XCOPY C:\Fonts C:\Windows\Fonts
接下来会让你选择是否覆盖,输入A,然后回车。
提示完成后,退出命令提示符,选择继续使用Windows11
待电脑重启后字体替换就已经完成了。
如果替换字体后电脑出现任何问题,那么重复以上步骤,并在输入命令时将指令换成
XCOPY 你的备份字体文件夹地址 C:\Windows\Fonts
比如我把备份字体的文件夹放在了G盘,命名为backup,
那么我就应该输入
XCOPY G:\backup C:\Windows\Fonts
之后就能将字体替换回来了。
码字不易,@酷安小编 ,再PY一下可以嘛[受虐滑稽]