Fonts 是否加载合法的X11字体?
我正在学习一点X11编程,并对XLoadFont进行了一些修改。以下代码在一台计算机上工作,但在另一台计算机上不工作。然而,从我能找到的所有文件来看,这似乎是合法的。如果我对某些事情感到困惑,请告诉我:Fonts 是否加载合法的X11字体?,fonts,x11,Fonts,X11,我正在学习一点X11编程,并对XLoadFont进行了一些修改。以下代码在一台计算机上工作,但在另一台计算机上不工作。然而,从我能找到的所有文件来看,这似乎是合法的。如果我对某些事情感到困惑,请告诉我: // fail.c #include <X11/Xlib.h> int main(int argc, char** argv) { Font f; Display* disp; XFontStruct* f1; disp = XOpenDispla
// fail.c
#include <X11/Xlib.h>
int main(int argc, char** argv) {
Font f;
Display* disp;
XFontStruct* f1;
disp = XOpenDisplay("");
f = XLoadFont(disp, "*");
f1 = XQueryFont(disp, f);
XFreeFont(disp, f1);
return 0;
}
如果我理解正确,“*”的XLoadFont应该只返回找到的任何字体。然而,在我试过的三台计算机中,有两台失败了。请注意。我的发行版(gentoo)安装了一些错误的font.alias文件,这些文件的顶部有以下行:
! $Xorg: fonts.alias,v 1.3 2000/08/21 16:42:31 coskrey Exp $
这导致(我假设)将“!”与“*”匹配,然后尝试将行的其余部分作为字体加载,这显然不是字体名称。杀了这条线,一切都正常了
! $Xorg: fonts.alias,v 1.3 2000/08/21 16:42:31 coskrey Exp $