1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
| #include "CImg.h"
#include <iostream>
#include<string.h>
using namespace std;
#define cimg_use_jpeg
#define cimg_use_png
using namespace cimg_library;
int main(){
int choix,degré,x;
bool on_continue = true;
char adresse[100],nouvel_adr[100],format[100],adr2[100];
while(on_continue == true)
{
cout<<"********************Bibliothéque de traitement d'image ********************\n\n"<<endl;
cout<<"1- affichage\n"<<endl;
cout<<"2- rotation\n"<<endl;
cout<<"3- zoom\n"<<endl;
cout<<"4- conversion de format \n"<<endl;
cout<<"5- mirror\n"<<endl;
cout<<"6- rogner\n"<<endl;
cout<<"7- quitter\n"<<endl;
cout<<"Veuillez entrer votre choix:\n"<<endl;
cin>>choix;
switch(choix)
{
//affichage de l'image
case 1 :
{ cout<<"enter l'adresse de l'image à afficher"<<endl;
cin>>adresse;
CImg<double> image(adresse);
image.display();
break;
}
//rotation de l'image
case 2:
{ cout<<"enter l'adresse de l'image "<<endl;
cin>>adresse;
cout<<"entrer le degré de rotation souhaité"<<endl;
cin>>degré;
CImg<double> image(adresse);
image.rotate(degré);
image.display();
cout<<"tapez 0 si vous souhaitez enregistrez l'image "<<endl;
cin>>x;
if (x==0)
{
cout<<"enter l'adresse de l'emplacement souhaité"<<endl;
cout<<nouvel_adr;
image.save(nouvel_adr);
}
break;
}
//zoom
//case 3:{
// break;
// }
//conversion de format
case 4:{
cout<<"enter l'adresse de l'image à convertir"<<endl;
cin>>adresse;
cout<<"entrer le format souhaité"<<endl;
cin>>format;
cout<<"entrer l'adresse souhaité"<<endl;
cin>>adr2;
CImg<double> image(adresse);
if (strcmp(format,"bmp"))
{ image.save_bmp(adr2);}
if (strcmp(format,"jpeg"))
{ image.save_jpeg(adr2);}
if (strcmp(format,"png"))
{ image.save_png(adr2);}
break;
}
//mirror
case 5:{
cout<<"enter l'adresse de l'image "<<endl;
cin>>adresse;
CImg<double> image(adresse);
image.mirror('X');
image.display();
break;
}
//rogner
case 6:{
cout<<"enter l'adresse de l'image "<<endl;
cin>>adresse;
CImg<double> image(adresse);
image.dispz(500,500,"zoomed image",0);
// image.display();
break;
}
case 7:{
exit(0);
on_continue = false;
break;
}
default:cout<<"votre choix ne fait pas partie de la liste,veuillez consulter de nouveau nos choix"<<endl;
}
return 0;
}
} |
Partager