Récupérer le contenu d'un fichier bitmap dans une matrice [Résolu]

Messages postés
4
Date d'inscription
vendredi 20 mai 2011
Statut
Membre
Dernière intervention
10 janvier 2012
- - Dernière réponse : ibrsoft
Messages postés
4
Date d'inscription
vendredi 20 mai 2011
Statut
Membre
Dernière intervention
10 janvier 2012
- 10 janv. 2012 à 19:49
salut tous
je veux récupérer le contenu d'un fichier bitmap dans une matrice comment je doit procéder
exemple: le fichier 1.bmp représente le chiffre 1 je veux que ma matrice soit récupérée comme suit:

0,0,0,1,0,
0,0,1,1,0,
0,0,0,1,0,
0,0,0,1,0,
0,0,0,1,0
et merci de votre passage et aide
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
4
Date d'inscription
vendredi 20 mai 2011
Statut
Membre
Dernière intervention
10 janvier 2012
3
Merci
Merci buno

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 145 internautes nous ont dit merci ce mois-ci

Commenter la réponse de ibrsoft
Messages postés
14511
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
24 mai 2019
88
0
Merci
Hello,
Jettes un coup d'oeil sur ma source, ça va sûrement t'aider...


@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Commenter la réponse de BunoCS
Messages postés
4
Date d'inscription
vendredi 20 mai 2011
Statut
Membre
Dernière intervention
10 janvier 2012
0
Merci
salut
voila le code une autre fois

#include <stdio.h>
#include <stdlib.h>

typedef struct
{   //1-Entête du fichier
    char signature[2];//indique s'il s'agit d'un fichier BMP à l'aide des deux caractères BM sur 2 octets.
    int fileSize;//La taille totale du fichier en octets (sur 4 octets)
    int reserved;//Un champ réservé (sur 4 octets)
    int offset;//adresse relative du début des informations concernant l'image par rapport au début du fichier
    //2-Entête de l'image
    int taille;//La taille de l'entête de l'image en octets (codée sur 4 octets).
    int largeur;
    int hauteur;
    short nplans;//Cette valeur vaut toujours 1
    short nbits;//le nombre de bits utilisés pour coder la couleur
    int compression;//vaut 0 lorsque l'image n'est pas compressée
    int taille_img;//La taille totale de l'image en octets (sur 4 octets).
    int hRes;//résolution horizontale  nombre de pixels par mètre horizontalement
    int vRes;
    int nColor;
    int nImportantColor;

}bmpInfo;
void imageInfo(bmpInfo* img){
        printf("Signature :%c%c\n", img->signature[0], img->signature[1]);
        printf("taille totale du fichier %d\n",img->fileSize);
        printf("reservee %d\n",img->reserved);
        printf("decalage : %d\n",img->offset);
}

int main()
{
    FILE* fichier=NULL;
    bmpInfo *img=malloc(sizeof(bmpInfo));
    fichier=fopen("1.bmp","rb");
    if (fichier == NULL)
        printf ("Erreur a l'ouverture du fichier\n");
    else {
        printf ("Fichier bien ouvert !\n");
        fread(img,sizeof(bmpInfo),1,fichier);
        imageInfo(img);
        fclose(fichier);
    }
    return 0;
}


voila le résultat de l’exécution:

Fichier bien ouvert !
Signature :BM
taille totale du fichier 0
reservee 4063232
decalage : 2621440

le pb de taille et offset?
@++
Commenter la réponse de ibrsoft
Messages postés
14511
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
24 mai 2019
88
0
Merci
C'est quoi la question?


@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Commenter la réponse de BunoCS