首先弄懂了BMP文件的内容格式:包括文件头信息,图像信息头,调色板数据,图像数据四部分。文件头包含14个字节,而图像信息头包含44字节。BMP文件的格式是简单的。读取文件用fopen(),fread函数,了解是通过字节来进行文件的读取。
#include
#include
#include
using
namespace std;
#define
BM 19778
#pragma
pack(2)
typedef
struct bmFileHeader
{
unsigned short bmType;
unsigned int bmSize;//文件的大小,以字节为单位
unsigned short bmReserved1;
unsigned short bmReserved2;
unsigned int bmDtOffset;
}BMPFILEHEADER;
typedef
struct bmFileInfoHeader
{
unsigned int bmInHeadLength;
long bmFileWidth;
long bmFileHeight;
unsigned int bmFilePlan;
unsigned int bmBitsPerPixel;
unsigned int bmCompression;
unsigned int bmDatasize;
long bmHResolution;
long bmVResolution;
unsigned int bmColors;
unsigned int bmInColors;
}BMPFILEINFORHEADER;
typedef
struct bmRGBQUAD
{
char rgbBlue;
char rgbGreen;
char rgbRed;
char rgbReserved;
}BMPRGBQUAD;
int
main()
{
int
cc=sizeof(bmFileInfoHeader);
char*
aa;
FILE *
file;
{
exit(1);
}
BMPFILEHEADER bmpFileHeader;
fread(&bmpFileHeader,sizeof(BMPFILEHEADER),1,file);
cout<
"<
cout<
"<
cout<
is"<
cout<
"<
cout<
is"<
BMPFILEINFORHEADER bmInfoFile;
fread(&bmInfoFile,sizeof(BMPFILEINFORHEADER),1,file);
cout<
cout<
cout<
cout<
cout<
cout<
cout<
cout<
}