Render UTF-8 text at high quality to a new 8-bit surface.
Defined in <SDL3_ttf/SDL_ttf.h>
const char *text, size_t length, SDL_Color fg, SDL_Color bg); SDL_Surface * TTF_RenderText_Shaded(TTF_Font *font,
TTF_Font * | font | the font to render with. |
const char * | text | text to render, in UTF-8 encoding. |
size_t | length | the length of the text, in bytes, or 0 for null terminated text. |
SDL_Color | fg | the foreground color for the text. |
SDL_Color | bg | the background color for the text. |
(SDL_Surface *) Returns a new 8-bit, palettized surface, or NULL if there was an error.
This function will allocate a new 8-bit, palettized surface. The surface's 0 pixel will be the specified background color, while other pixels have varying degrees of the foreground color. This function returns the new surface, or NULL if there was an error.
This will not word-wrap the string; you'll get a surface with a single line of text, as long as the string requires. You can use TTF_RenderText_Shaded_Wrapped() instead if you need to wrap the output to multiple lines.
This will not wrap on newline characters.
You can render at other quality levels with TTF_RenderText_Solid, TTF_RenderText_Blended, and TTF_RenderText_LCD.
This function should be called on the thread that created the font.
This function is available since SDL_ttf 3.0.0.