Da SDL von sich aus keine Funktion hat, um Font-Dateien laden und anzeigen zu können, bietet es sich an, die SDL_TTF-Bibliothek zu benutzen.

InstallationBearbeiten

LinuxBearbeiten

sudo apt-get install libsdl-ttf2.0-0 libsdl-ttf2.0-dev

WindowsBearbeiten

http://www.libsdl.org/projects/SDL_ttf/

BeispielBearbeiten

#ifdef __linux__
#include "SDL/SDL.h"
#include "SDL/SDL_ttf.h"
#else
#include "SDL.h"
#include "SDL/SDL_ttf.h"
#endif
int main(int argc, char** argv)
{
 if (SDL_Init(SDL_INIT_VIDEO) == -1) {
  printf("Can't init SDL:  %s\n", SDL_GetError());
  exit(1);
 }
 TTF_Init(); // Unbedingt vorher aufrufen
 SDL_Surface *screen = SDL_SetVideoMode(640, 480, 24, SDL_HWSURFACE | SDL_DOUBLEBUF);
 SDL_Color color = { 255, 255, 0 }; //rot grün blau
 TTF_Font *font=TTF_OpenFont("irgendein_font.ttf",28);
 SDL_Surface *text = TTF_RenderText_Solid(font, "Das ist ein Text", color);
 SDL_Rect rect = {320,240,0,0};//text position
 SDL_BlitSurface(text,NULL,screen,&rect);
 SDL_Flip(screen);
 SDL_Delay(2000);
}

KompilierenBearbeiten

LinuxBearbeiten

g++ `sdl-config --cflags --libs` -lSDL_ttf Datei.cpp -o Kompilierte_Datei

WindowsBearbeiten