![如何更改默认的中文字体?](https://linux22.com/image/958864/%E5%A6%82%E4%BD%95%E6%9B%B4%E6%94%B9%E9%BB%98%E8%AE%A4%E7%9A%84%E4%B8%AD%E6%96%87%E5%AD%97%E4%BD%93%EF%BC%9F.png)
我从存储库安装了两种中文字体:UMing 和 UKai。我更喜欢 UKai 的外观,但 Ubuntu 默认选择的字体(选择非中文字体时)是 UMing。例如,我的桌面字体是 Droid Sans,但中文字符是从 UMing 中选择的。我该如何选择 UKai 作为默认中文字体?
PS 如果我只是将桌面字体更改为 UKai,我将无法获得 Droid Sans 拉丁字符,所以这不是解决方案。
答案1
不幸的是,Ubuntu 下没有 GUI 配置编辑器可以解决这个问题。Gnome 或 Unity 下的 GUI 字体选择器只允许您为每个选项选择一种字体,而字体管理器只允许您启用/禁用字体。
但是,正如 Linux 系统的典型情况一样,您实际上可以对其进行配置,只是您需要从大量文档中挖掘出配置选项。
现在,直奔主题:您需要编辑/创建文件~/.fonts.conf
。
- 默认情况下该文件不存在。但是,如果您使用过字体管理器之类的东西,那么可能会有一个占位符文件
~/.fonts.conf
告诉您改用~/.config/font-manager/local.conf
,在这种情况下您应该创建后者。 - 您应该先打开
~/.fonts.conf
检查一下。 - 要检查文件是否存在,一个简单的方法是打开文件管理器,转到“主页”,检查“查看->显示隐藏文件”并查看是否可以找到
.fonts.conf
。
创建文件后,将以下代码放入其中:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<alias>
<family>sans-serif</family>
<prefer>
<family>Droid Sans</family>
<family>UKai</family>
</prefer>
</alias>
</fontconfig>
它的作用是创建一个字体解析后备列表。当程序请求无衬线字体时(大多数 GUI 字体默认为无衬线),系统会尝试使用第一种字体(Droid Sans)来表示某个字符。如果该字体不支持该字符,则将使用第二种字体(UKai)。我不确定将 Droid Sans 指定为第一首选项是否有意义,但为了安全起见,您最好保留它。
还请注意,您需要登出您的账户并再次登录即可查看效果。
对我来说,注销并再次登录后效果立竿见影,并且字体选择在整个系统范围内有效。
以上答案基于相关博客文章:Fedora 中文字体设置
编辑
/etc/fonts/conf.avail
或者/etc/fonts/conf.d
(我不记得具体是哪个了)下还有一个更全面的配置示例,其名称包含zh-CN
。里面是一组用于调整的配置精确的后备字体顺序,这比上述方法更合适。只需将文件中的内容复制到~/.fonts.conf
或中~/.config/font-manager/local.conf
,然后更改字体顺序以满足您的需求。