如何禁用位图字体?

如何禁用位图字体?

我尝试使用来自 github 的位图字体,并且必须启用位图字体,因为它们在 Ubuntu 中默认被禁用。我不知道启用位图字体会有一些副作用。我确信 Chrome 中的文本似乎有问题(就像它完全使用了新字体一样)。我不喜欢它。所以我想恢复它就像我启用位图字体之前一样。

我使用以下命令来启用位图字体:

cd /etc/fonts/conf.d/
sudo rm /etc/fonts/conf.d/10* && sudo rm -rf 70-no-bitmaps.conf && sudo ln -s ../conf.avail/70-yes-bitmaps.conf
sudo dpkg-reconfigure fontconfig

请帮助我禁用位图字体。提前致谢!

答案1

在旁边@Candy Gumdrop 的回答,最好禁用embedded bitmap,如果启用此设置,某些字体(如 Calibri)在某些分辨率下看起来会很糟糕(见下图)。Calibri 字体和其他 cleartype 字体中嵌入了位图版本,这些版本在小尺寸下激活,这使其看起来很糟糕。

您可以通过以下方式禁用:

cd /etc/fonts/conf.d

cat << END | sudo tee ../conf.avail/99-no-embeddedbitmap.conf
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <description>Disable embedded bitmap</description>
  <match target="font" >
    <edit name="embeddedbitmap" mode="assign">
        <bool>false</bool>
    </edit>
  </match>
</fontconfig>
END

sudo ln -s ../conf.avail/99-no-embeddedbitmap.conf ./

sudo dpkg-reconfigure fontconfig

在此处输入图片描述

答案2

该目录/etc/fonts/conf.d/包含指向 中的配置文件的符号链接/etc/fonts/conf.avail/。可以添加和删除这些符号链接以自定义 fontconfig 的配置。

您先前运行的命令禁用了所有10-*配置选项,以及禁用70-no-bitmaps和启用70-yes-bitmaps。要具体撤销后一部分,您可以运行以下命令:

cd /etc/fonts/conf.d
sudo rm 70-yes-bitmaps.conf
sudo ln -s ../conf.avail/70-no-bitmaps.conf ./

要取消禁用配置文件的效果,10-*取决于您一开始启用了哪些配置文件。以下是10-*我在计算机上启用的配置文件:

cd /etc/fonts/conf.d
sudo ln -s ../conf.avail/10-hinting-slight.conf ./
sudo ln -s ../conf.avail/10-scale-bitmap-fonts.conf ./
sudo ln -s ../conf.avail/10-sub-pixel-rgb.conf ./

或者,您可以按照以下方法启用10-*Ubuntu Bionic 的默认选项:

cd /etc/fonts/conf.d
sudo ln -s ../conf.avail/10-hinting-slight.conf ./
sudo ln -s ../conf.avail/10-scale-bitmap-fonts.conf ./
sudo ln -s ../conf.avail/10-antialias.conf ./

不过,我个人建议您选择sub-pixel-rgb而不是,antialias除非您没有标准液晶显示器。

但是,您可能会发现 Chrome 中出现的奇怪字体渲染是因为您禁用了这些10-*配置文件,而不是因为您启用了位图字体。在完全恢复为没有位图字体之前,您可能希望尝试仅重新启用这些配置文件,而不从切换回。除了允许使用位图字体外,启用70-yes-bitmaps不会影响任何其他字体。您还可能缺少一些字体,通过运行以下命令可能会获得比原来更好的结果:70-no-bitmaps70-yes-bitmaps

sudo apt install ttf-mscorefonts-installer

最后,在您改变了 fontconfig 配置后,您应该运行:

sudo dpkg-reconfigure fontconfig

这将更新您的字体配置缓存,以便您的更改生效。您可能还需要重新启动程序/注销并重新登录/重新启动计算机才能使更改生效。

答案3

无需 sudo 权限即可完成:

  • 创建文件夹和文件 ~/.config/fontconfig/fonts.conf
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
 <match target="font">
  <edit name="embeddedbitmap" mode="assign">
   <bool>false</bool>
  </edit>
 </match>
</fontconfig>

或者与终端命令相同:

mkdir -p ~/.config/fontconfig/
cd ~/.config/fontconfig/
touch ~/.config/fontconfig/fonts.conf
echo '<fontconfig><match target="font"><edit name="embeddedbitmap" mode="assign"><bool>false</bool></edit></match></fontconfig>' >> fonts.conf

更多信息:https://forums.linuxmint.com/viewtopic.php?p=1961136#p1961136

相关内容