J'essaie de créer une application qui inverse les couleurs d'un fichier bitmap mais qui rencontre des problèmes pour rassembler les données et le bitmap. J'utilise des structures pour conserver les données pour le bitmap et son en-tête. En ce moment je:Lecture et écriture de bitmaps dans c
struct
{
uint16_t type;
uint32_t size;
uint32_t offset;
uint32_t header_size;
int32_t width;
int32_t height;
uint16_t planes;
uint16_t bits;
uint32_t compression;
uint32_t imagesize;
int32_t xresolution;
int32_t yresolution;
uint32_t ncolours;
uint32_t importantcolours;
} header_bmp
struct {
header_bmp header;
int data_size;
int width;
int height;
int bytes_per_pixel;
char *data;
} image_bmp;
Maintenant, pour la lecture et l'écriture en fait le bitmap que je donne les résultats suivants:
image_bmp* startImage(FILE* fp)
{
header_bmp* bmp_h = (struct header_bmp*)malloc(sizeof(struct header_bmp));
ReadHeader(fp, bmp_h, 54);
}
void ReadHeader(FILE* fp, char* header, int dataSize)
{
fread(header, dataSize, 1, fp);
}
De là, comment dois-je extraire les informations d'en-tête dans ma structure d'en-tête?
De même, si quelqu'un a de bonnes ressources sur la lecture et l'écriture de bitmaps, s'il vous plaît faites le moi savoir. J'ai cherché pendant des heures et ne peux pas trouver beaucoup d'informations utiles sur le sujet.