2

我们的应用程序使用帧缓冲区显示以无头模式运行一些命令。我们不能依赖 Xvfb 安装在每台机器上的事实,但我们假设 X 服务器是,所以我们将 Xvfb 二进制文件捆绑到我们的应用程序中。问题是在某些机器上,当运行捆绑的 Xvfb 时,我们会收到以下致命错误:

could not open default font 'fixed'

有没有办法捆绑基本字体,并将 Xvfb 二进制文件指向它们,或者有更优雅的解决方案吗?

谢谢!

4

2 回答 2

2

来自 X.Org 的现代版本的 libXfont 具有内置的基本“固定”和“光标”字体,但直到最近的版本(我相信 2009 年的 Xorg 1.7),您需要在字体路径中明确指定“内置”让 Xvfb 等 Xserver 找到它们。

于 2012-01-16T17:08:05.663 回答
2

未来会有一个更优雅的解决方案,它被称为 Xdummy,它能够使用带有虚拟驱动程序的真实 X11 服务器来获得由真实服务器支持的虚拟屏幕(Xvfb 现在几乎没有维护)。更多细节(和包)here,它基于Karl Runge 的 Xdummy,但更简洁(没有共享库技巧)这将是 Xorg 服务器 1.12 的一部分(即将到期)

在那之前,你可以用Xvfb一个小脚本来计算字体在系统上的位置(没有那么多地方)并将-fp string default font path参数添加到命令行。

于 2012-01-11T09:39:23.380 回答