SDL不呈现truetype字体

Lor*_*Aro 6 c++ fonts truetype sdl-ttf sdl-2

我不完全确定这是最好的地方,但我想不出更好的地方

我已经"制作"了一种低分辨率的字体.(奖励积分,如果你知道它实际来自哪里)

字体在gedit中工作正常: gedit中

但是,当尝试使用SDL_ttf渲染字体时,除了一些多字节unicode字符(特别是' æ '和' ')之外,它主要起作用,而其他非ASCII字符工作正常.但是(!),所有这些字符都适用于其他字体(我一直在使用DejaVu Sans)

我的字体 Dejavu Sans

其他字体工作正常的事实表明代码不应该受到责备,但以防万一:

SDL_Surface *surf = TTF_RenderUTF8_Solid(this->font, (const char *)text, col);
if (surf == nullptr) {
    fprintf(stderr, "Rendering text failed (%s)\n", TTF_GetError());
    return;
}

if (surf->format->BitsPerPixel != 8 || surf->format->BytesPerPixel != 1) {
    fprintf(stderr, "Rendering text failed (Wrong surface format)\n");
    return;
}
Run Code Online (Sandbox Code Playgroud)

(text is const uint8*)显然没有触发这些错误

我注意到这两个角色特别比其他角色更广泛,这可能是罪魁祸首吗?

根据下面的评论,字体似乎与SDL_TTF"latin-1"演示一起正常工作:

在演示中工作

Lor*_*Aro 1

我..我不知道出了什么问题。我刚刚又尝试了一次,效果很好。

在此输入图像描述

我非常确定我已经检查过我使用的是正确的字体..或者也许我在生成它时更改了某些内容

无论如何,感谢您的帮助:)