撸linux


使用lulinux字体渲染包前后的微软雅黑+宋体的渲染效果比较

我一直推荐使用微软雅黑+宋体来实现与Windows 7/10一致的字体渲染效果,以适应刚从windows转来的部分Linux用户的需求。

从2014年8月我就开始提供一条命令快速渲染Linux字体的配置包,做这个包的目的就是为了节省Linux用户大量时间去干更高级的工作。虽然包含从windows里拷贝出来的微软雅黑和宋体,但字体渲染包的重点并不是提供微软的这两种字体,而是打包已经打好补丁的libfreetype库和infinality的字体配置文件。有了后面这2样东西,大家就不用浪费时间找infinality补丁去自行编译libfreetype库,也不用去学习无价值的fontconfig技术、钻研优化字体配置。

那么不用这个lulinux字体渲染包,直接从windows下拷贝微软雅黑和宋体,效果如何?

不得不说,这几年freetype库的确有很大的改进,3年前如果从windows下直接拷贝微软雅黑和宋体,会有很多问题,例如微软雅黑渲染的很渣,字符都是歪歪扭扭的,宋体点阵部分在firefox里渲染的很粗等等。这些问题在今天都已经没有了。

然而其他的一些问题仍然存在,通过以下6张图,可以看出直接从windows下拷贝的微软雅黑和宋体,和lulinux字体渲染包的效果还是有很多不同的:

↑↑↑ 系统原生的渲染效果:桌面字体开启hintfull之后,虽然一般程序界面微软雅黑字体效果很好(跟windows下的效果一致),没有当年的歪歪扭扭、粗细不均的现象,但是firefox浏览器里显示的并不是hintfull的正常效果,仍然是模糊发虚的。这对经常上网阅读文章、习惯使用微软雅黑的人来说体验并不好。(这个bug可能是freetype库的问题,也可能是字体配置文件的问题。)

↑↑↑ lulinux字体渲染包效果:桌面字体开启hintfull之后,一般程序界面和firefox网页里显示的微软雅黑均为正常且一致的清晰易认的效果。

↑↑↑ 系统原生的渲染效果:因为windows的simsun宋体字库中的数字、字母和标点符号(基本拉丁字符)并不像汉字一样拥有相应的点阵位图,而Linux无法像windows那样自动生成它们,转而用了其本身的矢量部分,这样,在网页上显示的simsun宋体一部分清晰锐利,一部分又模糊发虚,效果跟Windows下的并不一样。

↑↑↑ lulinux字体渲染包效果:小撸已经将simsun中的基本拉丁字符手动生成点阵位图,所有字符都会显示的清晰锐利,跟Windows下的效果一样。

↑↑↑ 系统原生的渲染效果:wine程序界面默认使用了simsun的矢量部分,相当模糊难看。

↑↑↑ lulinux字体渲染包效果:小撸将simsun的鸡肋矢量字体替换成了微软雅黑,这样wine程序界面显示的就是漂亮的微软雅黑字体,跟windows下的体验一致。

注:以上截图使用的系统是Manjaro 17.0.1,桌面是Xfce。截图时间:2017.05.01

相关博文



以下是网友的2条评论,您赞同吗?

  1. wszqkzqk
    2017-7-9 6:44

    能不能把微软雅黑直接伪装成宋体

发表评论

电子邮件地址不会被公开。