SDL Text ausgeben [gelöst]



  • Hi
    Wie kann ich SDL Text ( zb einen Punktestand)
    auf den Bildschirm ( nicht das terminal) schreiben?



  • SChau dir mal SDL_ttf an.
    http://www.libsdl.org/projects/SDL_ttf/



  • bin ich der einzige bei den das downloaden unter linux nicht funktioniert?



  • Silahel schrieb:

    bin ich der einzige bei den das downloaden unter linux nicht funktioniert?

    Bei mir geht der Download. Allerdings sind das .rpm Pakete, die von Debian/Ubuntu/Mint/... nicht unterstützt werden. Die meisten Distributionen bieten aber Pakete für SDL_ttf an (unter Ubuntu brauchst libsdl-ttf2.0-dev), sodass du nicht selber kompilieren brauchst.



  • danke pyhax!



  • Ok!
    Noch eine Frage wiso gibt dieser Code hier nach dem erstem BLUB ein Segementation fault aus.
    Es ist ein Beispieltext aus dem Internet

    #include "SDL.h"
    #include "SDL/SDL_ttf.h"
    int main() {
    
    	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);
    		printf("BLUB\n"); // funktioniert
    	SDL_Surface *text = TTF_RenderText_Solid(font, "Das ist ein Text", color);
    		printf("BLUB\n"); // segementation fault
    	SDL_Rect rect = {320,240,0,0};//text position
    	SDL_BlitSurface(text,NULL,screen,&rect);
    	SDL_Flip(screen);
    	SDL_Delay(2000);
    }
    


  • So wie es aussieht konnte die font-Datei nicht geladen werden.
    Um ehrlich zu sein bezweifle ich auch, dass du ne Schriftdatei, die "irgendein_font.ttf" heißt, im selben Verzeichnis mit der ausführbaren Datei hast. 😃



  • c0ff33.alex schrieb:

    So wie es aussieht konnte die font-Datei nicht geladen werden.
    Um ehrlich zu sein bezweifle ich auch, dass du ne Schriftdatei, die "irgendein_font.ttf" heißt, im selben Verzeichnis mit der ausführbaren Datei hast. 😃

    oh das ist mir gar nicht aufgefallen danke :p


Anmelden zum Antworten