以下是事实:我在Ubuntu上使用代码块.我已经安装了SDL和SDL_ttf并已成功包含和链接它们.我想将文本渲染到字体的屏幕FreeSerif.

这是问题:当程序到达行TTF_OpenFont(“FreeSerif.ttf,20”)时,它返回NULL,如果传递给TTF_RenderText_Solid函数,则会导致段错误.我已将字体文件添加到项目中,但仍然无效.

这是代码:
TTF_Init();

TTF_Font *font = TTF_OpenFont("FreeSerif.ttf",20); //This returns NULL 

if(!font){printf("Unable to open font");exit(1);} //The program exits here

我有同样的问题,它似乎是一个路径错误,TTF_GetError()抛出这个:

Couldn’t open Arial.ttf

您应该使用绝对路径而不是相对路径设置字体.对我来说,它是

/Library/Fonts/Arial.ttf

代替 :

Arial.ttf

dawei

【声明】:淮南站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。