[ shmuki @ 09.05.2007. 10:10 ] @
Treba mi pomoc za strukture Bitmapfileheader i Bitmapinfoheader u C++.Ako neko zna neki link ili da objasni o cemu se radi...
[ 574nk3 @ 09.05.2007. 10:42 ] @
Evo jedan mali primer, kako na jednostavan nachin mozesh da izvuchesh podatke iz BMP-headera.

A za sve ostalo :
http://www.google.com/search?h...+header&btnG=Google+Search
Code:

#include <stdio.h>
#include <stdlib.h>
void LoadBMP (char *FileName)

    struct BMPHeader {
    signed   short bfType;
    unsigned long  bfSize,
                   bfReserved,
                   bfOffBits,
                   biSize,
                   biWidth,
                   biHeight;
    unsigned short biPlanes,
                   biBitCount;
    unsigned long  biCompression,
                   biSizeImage,
                   biXPelsPerMeter,
                   biYPelsPerMeter,
                   biClrUsed,
                   biClrImportant;   
  } __attribute__((packed)) Header;
  
  FILE *BMPFile;
    
  BMPFile = fopen (FileName, "rb");
  if (BMPFile == NULL)  {strcat (FileName,".BMP");
    BMPFile = fopen (FileName, "rb");
    if (BMPFile == NULL) { printf ("::Fajl ne moze da se otvori::");
      return;
    }
};
long ada;
fread (&Header, 54, 1, BMPFile);
printf("::bfType::%d\n",Header.bfType);
printf("::bfSize::%ld bytes\n",Header.bfSize);
printf("::bfReserved::%d\n",Header.bfReserved);
printf("::bfOffBits::%d\n",Header.bfOffBits);
printf("::biSize::%d\n",Header.biSize);
printf("::biWidth::%lu pixels\n",Header.biWidth);
printf("::biHeight::%d pixels\n",Header.biHeight);
printf("::biPlanes::%d\n",Header.biPlanes);
printf("::biBitCount::%d\n",Header.biBitCount);
printf("::biCompression::%lu\n",Header.biCompression);
printf("::biSizeImage::%d\n",Header.biSizeImage);
printf("::biXPelsPerMeter::%d\n",Header.biXPelsPerMeter);
printf("::biYPelsPerMeter::%d\n",Header.biYPelsPerMeter);
printf("::biClrUsed::%d colors\n",Header.biClrUsed);
printf("::biClrImportant::%d colors\n",Header.biClrImportant);
fclose(BMPFile);
};

int main(int argc, char *argv[])
{   
    char FileName[80];
    char ime;
    scanf("%s",&FileName);
    LoadBMP(FileName);
    
  system("PAUSE");
  return 0;
}