// EFFET : PROJECTION LATERALE EN DIAGONALE DU TEXTE MODE GRAPHIQUE
// ecran 639 sur 479
Source / Exemple :
// PROGRAMME EN C SOUS DOS TURBO C++2 BORLAND
// ecrit le 08-07-2002 par cmarsc
// EFFET : PROJECTION LATERALE EN DIAGONALE DU TEXTE MODE GRAPHIQUE
// ecran 639 sur 479
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <dos.h>
#define MAX_TAILLE 10
char *menu_noms[] = {
"isabelle","pierre", "olivier","jean-marc",
"anne","christine","roger","aline","justine","edouard",
"christopher","bernardette","louis","anne-sophie",NULL
};
int main(void)
{
int gdriver = DETECT, gmode, errorcode;
int hauteur_texte;
int i1,i2,i3,coul_texte;
initgraph(&gdriver, &gmode, "c:\\tc\\bgi");
errorcode = graphresult();
if (errorcode != grOk)
{
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1);
}
do {
// choisir la couleur du texte en avant plan
coul_texte = (rand() %15)+1;
for (i1 = 1; i1 < MAX_TAILLE; i1++) {
settextstyle(SMALL_FONT, HORIZ_DIR, i1);
hauteur_texte = 0;
for (i2 = 0; menu_noms[i2] != NULL; i2++) {
// creer un decalage (i2 * 7) entre les textes puis
// le supprimer pour qu'ils soient tous alignes
i3 = (i1 < MAX_TAILLE-1) ? (i2*7) : 0;
// (i1 * 20) = deplacement vers la droite
// (i2 * 10) = deplacement vers le bas
// effet d'ombre coloree
setcolor(coul_texte);
outtextxy(21+i3+(i1*20), 102 + hauteur_texte-(i2*10), menu_noms[i2]);
// texte avant plan
setcolor(BLACK);
outtextxy(19+i3+(i1*20), 100 + hauteur_texte-(i2*10), menu_noms[i2]);
// espace entre chaque ligne
hauteur_texte += textheight(menu_noms[0]);
}
// temps d'attente entre chaque progression du texte
delay(45);
// effacer l'ecran
if (i1 < MAX_TAILLE - 1) {
setfillstyle(1, LIGHTBLUE);
bar (1,1,getmaxx(),getmaxy());
}
}
// attente d'une seconde
delay(1000);
} while (!kbhit());
closegraph();
return 0;
} // fin de main
Conclusion :
// PROGRAMME EN C SOUS DOS TURBO C++2 BORLAND
// ecrit le 08-07-2002 par cmarsc
// EFFET : PROJECTION LATERALE EN DIAGONALE DU TEXTE MODE GRAPHIQUE
// ecran 639 sur 479
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.