Ubuntu 18.04 中字体字符显示为方块

Ubuntu 18.04 中字体字符显示为方块

最近,在我的 Ubuntu 18.04 上,我注意到至少在浏览器上gnome-calculator字体chromium显示为正方形。我按照说明这里这里chromium,计算器已修复,但是当我打开对话框搜索文件时问题仍然存在。

不确定这是否也会发生在其他应用程序上,我还没有检查所有应用程序,但文件管理器nemo运行nautilus良好。

此外,几个月前,我在我的自由办公室中添加了一些 Windows 字体这里。我使用了复制 ( cp) 方法,而不是链接 ( ln -s)。但是,直到昨天都运行良好。至少在我的 Linux 分区(双启动)上没有进行任何重大更改或更新。但是,我认为这与此无关。

我知道如何修复这个问题吗?

浏览对话框

答案1

我找到了解决方案,比我想象的更简单。

首先,您需要按照说明更新本地缓存这里

rm -rf ~/.cache/fontconfig 
sudo fc-cache -r -v

然后,您需要fontconfig在 snap 里面找到文件夹,因为这是 的 snap 版本chromium

find ~/snap/chromium/ -name 'fontconfig'

最后,删除里面的这个文件夹.cache

rm -rf ~/snap/chromium/common/.cache/fontconfig/

之后,chromium将使用其中本地更新的字体配置自动重新创建该文件夹~/.cache/fontconfig

重新启动chromium浏览器即可生效。

答案2

(前面的答案更好,但只是给未来读者的一个提示)

上述问题发生的另一种方式是~/.config/gtk-3.0/settings.ini文件损坏。请确保gtk-font-name从该文件中删除任何和/或其他不完整的行。显然,如果 GTK 无法解析它,您会遇到与上面显示的屏幕截图相同的问题。

答案3

对于 Ubuntu 22.04,删除目录fontconfig内的文件对我来说是有效的:postman

rm -rf ./snap/postman/common/.cache/fontconfig

答案4

对于在清除并重建字体缓存后仍遇到此问题的人,值得注意的是,权限不正确也可能是导致此问题的原因。此外,根据您的应用程序和您打开/阅读的内容,也可能是因为没有为源内容安装正确的字体系列/字体包。

为了确保您的权限正确(相关答案):

find /usr/share/fonts -iname '*.ttf' -type f -exec sudo chmod -v 644
find /usr/share/fonts -iname '*.otf' -type f -exec sudo chmod -v 644

随后刷新缓存 -

sudo fc-cache -r -v

至于字体包,安装分发“推荐字体”包通常是一个好主意(大多数都在其包管理器中包含此类包,有些是预装的,因此谷歌和特定于分发的文档将成为您的朋友)。

这些元软件包包含最常见的字体,应该可以满足日常使用的大部分兼容性要求。请先检查您的软件包管理器,可能已经存在跨软件包(如推荐字体-ubuntu 或类似软件包)。

一些例子:

我在 ArchLinux 中遇到了这个问题,试图使我的安装尽可能精简。我很快了解到,至少在字体方面,安装一些包含更常见字体的包可以省去很多麻烦 - 即使这意味着系统中存在一些冗余字符 :)

以上所有方法的结合最终解决了我的问题。

相关内容