旧版 X11 应用程序只能看到极少数字体

旧版 X11 应用程序只能看到极少数字体

我有一个非常老旧的 X11 应用程序(超过 10 年),它运行在 OpenSuse 桌面的 chrooted 环境中。它以前看起来不错,多年来我多次更新 Linux 发行版,始终没有问题。

现在从 OpenSuse 12.1 升级到 13.1 后,这个旧应用程序只能识别大约 10 种字体,而且看起来开始很糟糕。它只能识别 Times、Helvetica、Courier、Bookman 和其他一些字体。

应用程序可以使用不同类型的字体吗?也许旧应用程序仅支持一种字体,而最新的 Suse 可能已放弃/减少了这种字体?

确保这个旧应用程序再次具有一些好的字体的最佳方法是什么?

答案1

在 X 应用程序中有两种不同的查找和绘制字体的方法,更详细的描述请参见X.Org 字体文档,并且系统需要为每个提供不同的元数据文件。

较旧的应用程序不支持抗锯齿文本,它们可能使用旧的核心 X11 字体系统,该系统通过 X 字体路径(用 显示xset q、用 设置)以及由和xset fp创建的元数据文件(在该路径中的每个目录中)查找字体。 应该列出该系统中可用的所有字体。mkfontscalemkfontdirxlsfonts

支持抗锯齿文本的较新的应用程序可能会使用字体配置fonts.conf要在文件 (例如 中的文件)中列出的目录中找到字体,/etc/fonts/conf.d请使用 创建的元数据文件fc-cachefc-list应该列出可通过 fontconfig 获得的所有字体。

相关内容