probleme image en sortit de code

probleme image en sortit de code - C++ - Programmation

Marsh Posté le 07-01-2012 à 16:30:06    

bonjours je réalise un programme permettant de créer le négatif d'une image format pgm dans le cadre d'un projet de cour. J'ai le problème suivant une fois l'image enregistrer elle est illisible et semble vide je pense que mon problème se situe dans ma fonction de sauvegarde. Je fais suivre le code pour plus de compréhension.
 
merci de vos futur réponse
 
CODE:
 
 
#include <iostream>
#include <fstream>
#include <string>
 
using namespace std;
 
//principales variables du code
string ident;
int i, j, larg, haut, pixelMax, tab[600][600];
 
//-------------------------------
//progammation des fonctions !
//-------------------------------
 
//fonction chargement d'image
void charg(){  
string nom_image; //variable nom image
cout << "Entrez le nom de l'image" << endl;
cin >> nom_image;
ifstream fin (nom_image.c_str());
fin >> ident;
fin >> larg >> haut;
fin >> pixelMax;
for (i = 0; i<haut ;i++){  
for (j = 0; j<larg; j++){
fin >> tab[i][j];
}
}
cout<<"Image chargee"<<endl;
}
 
 
//fonction negatif  
void negatif(){
for (i=0 ; i<haut ; i++){
for (j=0 ; j<larg ; j++){
tab[i][j] = (255)-(tab[i][j]);
}
}
cout << "NŽgatif de l'image produit" << endl;
}
 
 
// fonction sauvegarde
void sauvegarde(){
string image_sauvegardee;  
cout << "Entrez le nom du fichier ˆ sauvegarder" << endl;
cin >> image_sauvegardee;
ofstream fout (image_sauvegardee.c_str());
fout << ident << endl;
fout << larg << " " << haut << endl;
fout << pixelMax << endl;
for (i=0 ; i<haut ; i++){
for (j=0 ; j<larg ; j++){
fout << tab[i][j] << " ";
}
fout<<endl;
}
}
 
//fonction fin de programme
void quitter() {
cout << "FIN" << endl;
}
 
 
//-----------------------
//fonction principale !
//-----------------------
int main (int argc, char * const argv [])
{
int numero; // numero = le chiffre entré par l'utilisateur en fonction de son choix dans le menu
do {  
cout << "\t \t Menu" << endl;
cout << endl;
cout << "0) Charger une image" << endl;
cout << "1) Produire le negatif" << endl;
cout << "2) Sauvegarder une image" << endl;
cout << "3) Quitter" << endl;
cout <<endl;
cout << " Choisissez votre numero" << endl;
cout << endl;
 
 
cin >> numero;
switch (numero){
case 0: charg (); cout << endl; break; // on fait appel ˆ la fonction lecture
case 1: negatif(); cout << endl; break; // on fait appel ˆ la fonction negatif
case 2: sauvegarde(); cout<< endl; break; // on fait appel ˆ la fonction sauvegarde
case 3: quitter(); cout << endl; break; // on fait appel ˆ la fonction quitter
}
if (numero>5 || numero<0){
cout << "vous avez entrez un chiffre non valide" <<endl;
cout << endl;
}
} while (numero != 5);  
return 0;
}

Reply

Marsh Posté le 07-01-2012 à 16:30:06   

Reply

Marsh Posté le 07-01-2012 à 19:32:54    

t'as peut être pas indiqué le bon chemin  :??:  
 
sinon tu n'a qu'a faire une sauvegarde de ton image et regarder quelle taille elle a, 0Ko ou pas ?

Reply

Marsh Posté le 07-01-2012 à 20:16:25    

http://forum.hardware.fr/hfr/Progr [...] 5776_1.htm
 
:spamafote:


---------------
Perhaps you don't deserve to breathe
Reply

Marsh Posté le 07-01-2012 à 21:29:44    

Bon, banjo16, je t'avais prévenu à plusieurs reprises.
Ban définitif donc.
A+,


Message édité par gilou le 07-01-2012 à 21:30:20

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed