Comment je peux changer le style de mon texte dans la console ?

Fermé
nisrineha Messages postés 14 Date d'inscription dimanche 17 janvier 2016 Statut Membre Dernière intervention 24 juillet 2016 - 17 janv. 2016 à 01:13
nisrineha Messages postés 14 Date d'inscription dimanche 17 janvier 2016 Statut Membre Dernière intervention 24 juillet 2016 - 17 janv. 2016 à 12:25
Bonjour,


quel librairie je dois inculure pour que je change le style de mon texte dans la console ? style = gras couleur italique taille .... est ce que c est mieux d utiliser conio.h ou windows.h?

1 réponse

ElementW Messages postés 4764 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 295
Modifié par gravgun le 17/01/2016 à 11:28
'lut, avec la console Windows, le seul truc que tu peux changer avec le texte, c'est sa couleur.
Gras et italique ne sont pas gérés, et la taille est un concept qui ne peut pas exister avec une console texte.

Donc à la question
est ce que c est mieux d utiliser conio.h ou windows.h?
, la réponse est "aucun" vu que tu ne peux pas faire ce que tu souhaites.
Pour la couleur tout du moins, cf cette réponse StackOverflow. Mais je te conseille, si possible, d'utiliser la bibliothèque
ncurses
à la place.
Pendant ce temps, les terminaux sous Linux gèrent le gras, italique, souligné, clignottant, le changement de police d'écriture, 256 couleurs en fond et en texte; et même les clics sur le terminal.

from human import idiocy
del idiocy
0
nisrineha Messages postés 14 Date d'inscription dimanche 17 janvier 2016 Statut Membre Dernière intervention 24 juillet 2016
17 janv. 2016 à 11:39
j ai aussi trouver une bibliotheque qui regroupe pas de librairie https://github.com/Organic-Code/lib_gcsl
est ce que je peux utiliser cela
0
ElementW Messages postés 4764 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 295 > nisrineha Messages postés 14 Date d'inscription dimanche 17 janvier 2016 Statut Membre Dernière intervention 24 juillet 2016
Modifié par gravgun le 17/01/2016 à 11:44
Oui tu peux, GCSL est une alternative plus légère à ce que
ncurses
propose.
0
nisrineha Messages postés 14 Date d'inscription dimanche 17 janvier 2016 Statut Membre Dernière intervention 24 juillet 2016
17 janv. 2016 à 11:50
donc c est mieux d utiliser GCSL
mais son auteur n a pas mis des exemples d utilisation
comment puis je l utiliser
0
nisrineha Messages postés 14 Date d'inscription dimanche 17 janvier 2016 Statut Membre Dernière intervention 24 juillet 2016
17 janv. 2016 à 12:24
bon j ai essaye ce code
#include <string.h>


#include <stdio.h>
#include <windows.h>
#define MAX 20


int main(){

char verbe[MAX]="";
int i=0, taille=0;
HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
CONSOLE_SCREEN_BUFFER_INFO consoleInfo;
WORD saved_attributes;

/* Save current attributes */
GetConsoleScreenBufferInfo(hConsole, &consoleInfo);
saved_attributes = consoleInfo.wAttributes;
while(1){
SetConsoleTextAttribute(hConsole, FOREGROUND_RED);
printf("\nEntrer le verbe\n");
SetConsoleTextAttribute(hConsole, saved_attributes);
scanf("%s",verbe);

//tu mettras ici ton switch

taille=strlen(verbe);
SetConsoleTextAttribute(hConsole, FOREGROUND_GREEN);
printf("longueur de %d\n",taille);

SetConsoleTextAttribute(hConsole, FOREGROUND_BLUE);
printf("je ");
for(i=0;i<taille-1;i++){
SetConsoleTextAttribute(hConsole, saved_attributes);
printf("%c",verbe[i]);}

SetConsoleTextAttribute(hConsole, FOREGROUND_BLUE);
printf("\ntu ");
for(i=0;i<taille-1;i++){
SetConsoleTextAttribute(hConsole, saved_attributes);
printf("%c",verbe[i]);}
printf("s\n");

SetConsoleTextAttribute(hConsole, FOREGROUND_BLUE);
printf("il ");
for(i=0;i<taille-1;i++){
SetConsoleTextAttribute(hConsole, saved_attributes);
printf("%c",verbe[i]);}

SetConsoleTextAttribute(hConsole, FOREGROUND_BLUE);
printf("\nNous ");
for(i=0;i<taille-2;i++){
SetConsoleTextAttribute(hConsole, saved_attributes);
printf("%c",verbe[i]);}
printf("ons\n");

SetConsoleTextAttribute(hConsole, FOREGROUND_BLUE);
printf("Vous ");
for(i=0;i<taille-1;i++){
SetConsoleTextAttribute(hConsole, saved_attributes);
printf("%c",verbe[i]);}
printf("z\n");

SetConsoleTextAttribute(hConsole, FOREGROUND_BLUE);
printf("ils ");
for(i=0;i<taille-1;i++){
SetConsoleTextAttribute(hConsole, saved_attributes);
printf("%c",verbe[i]);}
printf("nt\n");

}

return 0;
}
0
nisrineha Messages postés 14 Date d'inscription dimanche 17 janvier 2016 Statut Membre Dernière intervention 24 juillet 2016
17 janv. 2016 à 12:25
mais l arriere plan ne change pas
0