Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 使用sdl2 ttf打开系统字体_C_Fonts_Sdl - Fatal编程技术网

C 使用sdl2 ttf打开系统字体

C 使用sdl2 ttf打开系统字体,c,fonts,sdl,C,Fonts,Sdl,是否可以使用sdl2 ttf加载系统字体。我阅读了文档,但似乎只有加载带有完整文件路径的字体的方法。在windows上,这比在linux上要容易一些,因为字体文件夹相对容易找到,但在linux上,这是一个更大的问题,因为字体可以存储在不同的位置(例如,/usr/share和字体文件夹的主文件夹)。在linux下,我还没有找到一种可靠的方法来实现这一点,在Windows下,我找到了Windows的安装目录,并在其中附加了\font\。要在linux上显示文本,您需要通过harfbuzz ng(用于

是否可以使用
sdl2 ttf
加载系统字体。我阅读了文档,但似乎只有加载带有完整文件路径的字体的方法。在windows上,这比在linux上要容易一些,因为字体文件夹相对容易找到,但在linux上,这是一个更大的问题,因为字体可以存储在不同的位置(例如,
/usr/share
和字体文件夹的主文件夹)。在linux下,我还没有找到一种可靠的方法来实现这一点,在Windows下,我找到了Windows的安装目录,并在其中附加了
\font\

要在linux上显示文本,您需要通过harfbuzz ng(用于正确的文本整形)和fontconfig(用于字体发现和替换),直接或通过第三方lib,如pango或cairo

直接使用ttf文件会绕过字体位置堆栈、字体替换堆栈、正确的opentype元数据解析,这是一个局部解决方案,永远不会工作得太好


或者

要在Linux上显示文本,您需要直接或通过第三方库(如pango或cairo)通过harfbuzz ng(用于正确的文本成形)和fontconfig(用于字体发现和替换)

直接使用ttf文件会绕过字体位置堆栈、字体替换堆栈、正确的opentype元数据解析,这是一个局部解决方案,永远不会工作得太好


或者

哇,非常感谢!这些都是我可以很好地处理的信息!谢谢哇,非常感谢!这些都是我可以很好地处理的信息!谢谢