begin process at 2012 05 27 16:03:42
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Graphique

 > ENTETE DU FICHIER BMP (BIPMAP)

ENTETE DU FICHIER BMP (BIPMAP)


 Information sur la source

Note :
Aucune note
Catégorie :Graphique Classé sous :langage c, bmp, entete, bipmap Niveau :Débutant Date de création :21/03/2011 Date de mise à jour :21/03/2011 11:47:29 Vu / téléchargé :2 558 / 119

Auteur : k.Lutchi

Ecrire un message privé
Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note

 Description

Ce programme permet de lire l'entête du fichier BMP. Il fonctionne indifféremment en mode 32 bits ou 64 bits. Il lit l'entête du fichier grâce à une structure. Elle est reconvertie en une autre structure pour facilité l'accès aux données de l'entête. Le programme peut être facilement intégrable dans un autre programme. J'ai réalisé ce programme car j'ai eu un problème quand je suis passé sur Linux 64 bits. Les variables n'ont pas la même longueur.


 Conclusion

Ce code tout seul ne sert pas à grand chose, sauf pour montrer où se trouvent les informations du fichier. A utiliser dans un autre programme..
Je suis en cour de réalisation d'une classe pour les même fonction.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

21 mars 2011 11:47:30 :
Problème d'apostrophe

 Sources de la même categorie

Source avec Zip Source avec une capture PLANNING D'EQUIPE par grephit
Source avec Zip APPLICATION DE DESSIN DE QUELQUES FIGURES par laguchori
Source avec Zip Source avec une capture HDR EXPOSURE FUSION par mecrosoft
Source avec Zip Source avec une capture IRC CLIENT MULTISERVEUR EN MFC (TXIRC) par TeniX
Source avec Zip Source avec une capture XCOUPE : COUPE 2D par pop70

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture GENERE BMP par lajouad
Source avec Zip Source avec une capture JEU PUISSANCE 4 EN C AVEC GTK par msaidara
Source avec Zip GENERIC INPUTBOX FOR WINDOWS (WIN32 AND C) par FrancoisGauthier
Source avec Zip WINDOWCAPTURE par FrancoisGauthier
Source avec Zip Source avec une capture SNAKE EN C par drwich

Commentaires et avis

Commentaire de LeFauve42 le 28/03/2011 13:15:49

Bonjour,

Je vois un certain nombre de problemes dans ton source :
- D'abord, tu implementes des fonctions dans tes .h. Ceci est a proscrire, car en plus de plomber tes temps de compilation, ca empeche d'utiliser tes fonctions dans plusieurs fichiers .c
- Tu as dans tes .h une sequence #ifndef XXX ; #define XXX ; #endif. C'est suppose empecher les problemes d'inclusion multiple des .h, mais pour que ca fonctionne, les fonctions que tu declares dans ton .h doivent etre entre le "#define XXX" et le "#endif". Note bien que j'ai dit "declares" (ce que tu devrais faire) et pas "implementes" (ce que tu fais).

Pour ces deux points, je te conseillerai de jeter un oeil ici : http://gl.developpez.com/tutoriel/outil/makefile/#L1
L'exemple montre comment separer correctement les declarations et les implementations des fonctions.
Je te conseille aussi de lire le reste de l'article car les makefiles sont un moyen simple de recompiler ton projet quand tu as beaucoups de .c (et si tu developpes sous Linux, make et/ou gmake sont probablement deja installes sur ta machine).

Le dernier point est qu'il existe probablement un moyen de definir la structure entete des BMP d'une maniere portable (avec des types C qui ont la meme taille sur toutes les plateformes). Regarde ici par exemple : http://en.wikipedia.org/wiki/Stdint.h#Exact-width_integer_types
Dans ce cas, ton programme devient inutile... Mais ne t'inquiete pas pour ca, c'est comme ca qu'on apprend ;o)

Eric

Commentaire de daminator2 le 29/03/2011 17:45:53

Il est vrai que tout ceci est inacceptable mais je pense qu'il faut retenir la dernière phrase car moi aussi la première fois je n'avait pas tout compris et j'avais fait la même erreur...

Commentaire de dolabache le 19/04/2011 17:56:14

merci

Commentaire de k.Lutchi le 27/06/2011 11:18:19

Merci LeFauve42
J'ai mis du temps pour répondre.
Sinon je vais étudier tes propositions
Et en faire un retour

Commentaire de k.Lutchi le 27/06/2011 12:09:16

J'ai fait un test suite à la lecture de l'article http://en.wikipedia.org/wiki/Stdint.h#Exact-width_integer_types.
Le test unitaire a posé problème et permet de confirmer l'utilité de ma source dans le cas d'utilisation à l'intérieur d'une structure.
J'ai fait un test en extérieur d'une structure.
Cela fonctionne correctement.

Le test a été effectué sur :
PC 64bits
Noyau UBUNTU 11.4 64 Bits
IDE Eclipse Helios

Voici la structure de test :
Typedef struct
{
int32_t i32Normal1;
int32_t i32Normal2;
int32_t i32Normal3;
int32_t i32X1;
int32_t i32Y1;
int32_t i32Z1;
int32_t i32X2;
int32_t i32Y2;
int32_t i32Z2;
int32_t i32X3;
int32_t i32Y3;
int32_t i32Z3;
int16_t iCouleur;
} StructEcritureSLT;

J'ai fait test de taille avec sizeof.
J'ai eu 52 octet à la place de 50 octet;

Commentaire de k.Lutchi le 27/06/2011 12:16:54

Si des personnes sont sur un autre système que Windows ou Linux.
J'aimerai avoir un retour de test de mon programme sur un système d'exploitation qui lit autrement les données sur le disc dur.
Pour Windows et Linux du poids faible vert le poids fort.

Karl

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

BMP sous DOS [ par GoldenEye ] Comment afficher un fichier.bmp sous DOS avec Visual C++ ?Merci de votre aide.GoldenEye inp et outp [ par eric ] J'ai un problème avec ces deux fonctions.Voici les messages que j'obtiens à la compilation:bmp.obj : error LNK2001: unresolved external symbol _outpbm Afficher un Bmp dans un controle [ par Xaviou ] Salut.Je cherche comment créer un contrôle graphique (du style des PictureBox de VB, pour ceux qui connaissent).J'ai besoin de gérer l'appui, le dépl extraction du contour d'une image BMP [ par juliette ] On a une image en noir et blanc et on souhaiterait extraire son contour.Les images sont sous le format BMP.Extraire le contour d'une image consiste à compare 2 fichier bmp => detection de pixel [ par mavric ] bonjour je cherche comment comparer 2 bmp pour faire de la detection de pixel ,mais je n'y arrive pas !!!Si vous pouviez me donner des infos ou un sou Transformer une image JPEG en BMP [ par FLOX ] Bonjour à tous,Auriez vous un source me permettant de transformer une image JpEG en BMP. Tout cela d'une manière simple et compréhensive pour un début Initialiation d'un char [ par Stoomm ] Bonjour,J'ai vu un programme qui faisais ca :char monchar[10][256]={slide001.bmp, slide002.bmp, HELP!!!!!!!!!!!!!! => comparaison de BMP [ par mavric ] bonjour ,je cherche a comparer 2 fichiers bmp ,mais de facon optimisé , pour le moment mon prog mais environ 20 sec et il faudrait qui mette moins de HELP ME !!! Passer une image JPEG en BMP. Projet de fin d'année [ par FLOX ] Bonjour à tous,Auriez vous un source me permettant de transformer une image JPEG en BMP. Tout cela d'une manière simple et compréhensive pour un début coordonnées des controles ... [ par hotrod1 ] bonjour à tous ! J'utilise une fenètre de dialogue visual c++, et je voudrais savoir s'il est possible de déplacer des objet de la fenetre pendant l'u


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales