我在加载SDL_TTF字体时遇到问题。 我的代码:
TTF_Font* font = TTF_OpenFont( "Arial.ttf", 24 );
std::cout << "ERROR:" << TTF_GetError() << std::endl;
SDL_Color color = { 255, 255, 255, 255 };
SDL_Rect Message_Rect = { 400,400,100,100 };
SDL_Surface* surface = TTF_RenderText_Solid(font, "Text", color);
SDL_Texture* Message = SDL_CreateTextureFromSurface(Renderer, surface);
SDL_RenderCopy(Renderer, Message, NULL, &Message_Rect);
我在Debug文件夹中复制了Arial.ttf。 TTF_GetError()返回&#34;库未初始化&#34;。我检查链接器输入附加依赖项。 它包含
SDL2.lib
SDL2main.lib
SDL2_image.lib
SDL2_mixer.lib
SDL2_ttf.lib
SDL版本2.0.5
SDL_image版本2.0.1
SDL_mixer版本2.0.1
SDL_ttf版本2.0.14
我在调试模式下检查值。在TTF_OpenFont 0xcccccccc之前,在0x00000000之后
出了什么问题?
答案 0 :(得分:2)
看起来你还没有初始化SDL TTF。你可以这样做:
if (TTF_Init() < 0) {
// Error handling code
}