如何更改默认的中文字体?

如何更改默认的中文字体?

我从存储库安装了两种中文字体: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,然后更改字体顺序以满足您的需求。

答案2

由于 Ubuntu 已经发生了很大变化(最新版本为 18.0.4 lts)。我发现了这一点博客(用中文来说,假设你是一个中文读者,否则你为什么对中文这么模糊,哈哈)。

基本上它从子系统复制一些 Windows 字体,然后使用

sudo mkfontscale
sudo mkfontdir 
sudo fc-cache -fv 

更新创建一个 ubuntu 可识别的字体文件并将其加载到系统缓存中。

最后在unity 调整工具改变系统字体外观。

你可能会遇到一些缺少以下架构问题。

希望这个答案能为你们解决问题。也许在 Ubuntu 的后续版本中,他们会选择一些更好的字体。

相关内容