[Résolu] Comment afficher du texte dans une fenêtre en utilisant seulement la SDL2 et le langage C ?
Bonjour, je dois créer une application linguistique en utilisant uniquement le langage C ainsi que la SDL2. Je suis actuellement en train de créer le menu de mon application. Cependant, je ne trouve pas comment afficher du texte, pour par exemple afficher le nom de l'application ainsi que les règles du jeu.
J'ai installé la librairie SDL_ttf. Cependant, j'ai plusieurs messages d'erreur lors de la compilation. En cherchant sur Internet, je n'ai pas trouvé comment afficher du texte en utilisant uniquement du C et la SDL2. Donc j'aurais voulu savoir comment faire. Merci d'avance.
Afficher du texte avec la SDL2 seule c'est impossible car elle ne propose rien pour cela. ll te faudrait coder ta propre SDL_ttf ou de coder un système d'affichage de police bitmap.
Je te conseille donc SDL_ttf qui est facile à mettre en oeuvre.
Si tu as des messages d'erreurs à la compilation, analyse les et corrige les problèmes exposés.
Vu que tu codes en C avec la SDL2 tu dois être à l'aise avec tout ce qui est préprocesseur, compilateur, linker. Si ce n'est pas le cas, alors attention à ne pas bruler les étapes.
A priori tu as mal installé la librairie.
Comme je l'explique pour la librairie SDL_image (voir ici) la méthode est la même pour installer la SDL_ttf:
- télécharger le binaire adapté à ta plateforme
- installer le binaire au bon endroit (suivre ma formation pour organiser un projet facilement)
- installer les headers dans le répertoire include de ton projet
- modifier ton makefile, ton script, ou ta ligne de commande, pour linker avec la SDL_ttf
Ensuite, il faut suivre la doc de SDL_ttf :
- Initialiser SDL_ttf avec TTF_Init, au même moment que tu initialises la SDL2, la SDL_image, etc.
- Ouvrir une font avec TTF_OpenFont (et penser à la libérer avec TTF_CloseFont quand il le faut)
- Générer une texture avec ton texte, en récupérant la surface générée par TTF_RenderUTF8_Solid et en la transformant en texture avec SDL_CreateTextureFromSurface
- Afficher la texture
Tu trouveras pas mal d'exemples sur le net, par exemple ici :
https://stackoverflow.com/questions/22886500/how-to-render-text-in-sdl2
Je vais essayer ça. Merci beaucoup 😁.
- 6 Forums
- 262 Sujets
- 906 Posts
- 0 En ligne
- 45.6 {numéro}K Membres