如何使用SDL-TTF进行换行和换行?

时间:2013-07-25 02:04:36

标签: sdl sdl-ttf

我刚开始使用SDL2_ttf。我已经弄清楚如何使用TTF_RenderText_Blended在屏幕上显示一些文字,但是如何让它进行换行和自动换行呢?

  1. 似乎不支持\n;它只是创造了一个空间,而不是沿着一条线。有没有办法为此添加支持?具体来说,使用正确的文本行高,而不是在不同的Y坐标处多次调用RenderText。
  2. 给定X,Y坐标和宽度,如果达到该宽度(在单词之间断开),如何让它自动沿着一条线下移?

2 个答案:

答案 0 :(得分:20)

不使用TTF_RenderText_Blended,而是使用TTF_RenderText_Blended_Wrapped。它需要额外的参数:宽度(以像素为单位),之后文本将分成下一行。

答案 1 :(得分:2)

SDL_TTF没有包装,你必须自己编写。

TTF_Font* ttf;
TTF_SizeText(ttf, "Hello World", &w, &h);

为您提供字符串的宽度和高度。