probleme image en sortit de code - C++ - Programmation
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 ?
Marsh Posté le 07-01-2012 à 20:16:25
http://forum.hardware.fr/hfr/Progr [...] 5776_1.htm
Marsh Posté le 07-01-2012 à 21:29:44
Bon, banjo16, je t'avais prévenu à plusieurs reprises.
Ban définitif donc.
A+,
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;
}