You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Ubuntu 22.04系统中如何移除Sans、Serif、Monospace标准字体名称

Ubuntu 22.04系统中如何移除Sans、Serif、Monospace标准字体名称

嘿,我之前也碰到过这个问题!你提到的Sans、Serif、Monospace其实不是真实存在的字体文件,而是fontconfig(Ubuntu的字体配置系统)设置的通用别名——这就是为啥你在字体管理器里找不到它们的原因。下面是我亲测有效的两种移除方法,你可以根据需求选择:

方法一:系统级修改(影响所有用户)

这种方法会对整个系统生效,适合需要全局移除这些别名的场景:

  • 首先备份系统的通用字体别名配置文件,避免修改出错后无法恢复:
    sudo cp /etc/fonts/conf.d/60-generic.conf /etc/fonts/conf.d/60-generic.conf.bak
    sudo cp /etc/fonts/conf.d/60-latin.conf /etc/fonts/conf.d/60-latin.conf.bak
    
  • 编辑60-generic.conf文件,找到所有包含<family>Sans</family><family>Serif</family><family>Monospace</family><alias>块,把这些块用注释包裹(或者直接删除):
    sudo nano /etc/fonts/conf.d/60-generic.conf
    
    比如原本的Sans别名块:
    <alias>
      <family>Sans</family>
      <prefer>
        <family>DejaVu Sans</family>
        <family>Arial</family>
      </prefer>
    </alias>
    
    改成注释形式:
    <!--
    <alias>
      <family>Sans</family>
      <prefer>
        <family>DejaVu Sans</family>
        <family>Arial</family>
      </prefer>
    </alias>
    -->
    
  • 用同样的方法处理60-latin.conf文件里的对应别名块;
  • 更新fontconfig缓存,让修改立即生效:
    fc-cache -fv
    
  • 重启Chrome或其他应用,就能看到这些标准字体名称不再显示了。

方法二:用户级修改(仅影响当前用户)

如果不想改动系统全局配置,只针对自己的账号生效,可以用这种方式:

  • 在用户目录下创建fontconfig的自定义配置目录:
    mkdir -p ~/.config/fontconfig/conf.d/
    
  • 创建一个自定义配置文件,比如99-remove-generic-aliases.conf
    nano ~/.config/fontconfig/conf.d/99-remove-generic-aliases.conf
    
  • 将以下内容粘贴到文件中,保存退出:
    <?xml version="1.0"?>
    <!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
    <fontconfig>
      <!-- 移除Sans通用别名 -->
      <alias>
        <family>Sans</family>
        <remove>
          <family>*</family>
        </remove>
      </alias>
      <!-- 移除Serif通用别名 -->
      <alias>
        <family>Serif</family>
        <remove>
          <family>*</family>
        </remove>
      </alias>
      <!-- 移除Monospace通用别名 -->
      <alias>
        <family>Monospace</family>
        <remove>
          <family>*</family>
        </remove>
      </alias>
    </fontconfig>
    
  • 同样更新fontconfig缓存:
    fc-cache -fv
    
  • 重启应用后就能生效啦。

备注:内容来源于stack exchange,提问作者Max

火山引擎 最新活动