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

ibrsoft 4 Messages postés vendredi 20 mai 2011Date d'inscription 10 janvier 2012 Dernière intervention - 8 janv. 2012 à 14:27 - Dernière réponse : ibrsoft 4 Messages postés vendredi 20 mai 2011Date d'inscription 10 janvier 2012 Dernière intervention
- 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
ibrsoft 4 Messages postés vendredi 20 mai 2011Date d'inscription 10 janvier 2012 Dernière intervention - 10 janv. 2012 à 19:49
3
Merci
Merci buno

Merci ibrsoft 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de ibrsoft
BunoCS 14091 Messages postés lundi 11 juillet 2005Date d'inscription 20 septembre 2018 Dernière intervention - 9 janv. 2012 à 09:14
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
ibrsoft 4 Messages postés vendredi 20 mai 2011Date d'inscription 10 janvier 2012 Dernière intervention - 10 janv. 2012 à 00:14
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
BunoCS 14091 Messages postés lundi 11 juillet 2005Date d'inscription 20 septembre 2018 Dernière intervention - 10 janv. 2012 à 10:44
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

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.