Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
958 leency 1
#pragma pack(push, 1)
2
typedef struct tagBITMAPFILEHEADER
3
{
4
  Word   bfType;       //тип файла (для битового образа - BM)
5
  Dword  bfSize;       //размер файла в dword
6
  Word   bfReserved1;  //не используется
7
  Word   bfReserved2;  //не используется
8
  Dword  bfOffbits;    //смещение данных битового образа от заголовка в байтах
9
} tagBITMAPFILEHEADER;
10
 
11
typedef struct tagBITMAPINFOHEADER
12
{
13
  Dword  biSize;          //число байт, занимаемых структурой BITMAPINFOHEADER
14
  Dword  biWidth;         //ширина битового образа в пикселах
15
  Dword  biHeight;        //высота битового образа в пикселах
16
  Word   biPlanes;	  //число битовых плоскостей устройства
17
  Word   biBitCount;	  //число битов на пиксель
18
  Dword  biCompression;	  //тип сжатия
19
  Dword  biSizeImage;	  //размер картинки в байтах
20
  Dword  biXPelsPerMeter; //горизонтальное разрешение устройства, пиксел/м
21
  Dword  biYPelPerMeter;  //вертикальное разрешение устройства, пиксел/м
22
  Dword  biClrUsed;       //число используемых цветов
23
  Dword  biClrImportant;  //число "важных" цветов
24
} tagBITMAPINFOHEADER;
25
 
26
typedef struct tagRGBQUAD
27
{
28
  Byte   rgbBlue;
29
  Byte   rgbGreen;
30
  Byte   rgbRed;
31
  Byte   rgbReserved;
32
} tagRGBQUAD;
33
#pragma pack(pop)
34
 
35
class BMPFile
36
{
37
protected:
38
  tagBITMAPFILEHEADER Bmp_head;
39
  tagBITMAPINFOHEADER Info_head;
40
public:
41
  Dword width;
42
  Dword height;
43
  Byte* buffer;
44
  int  BMPFile::LoadBMPFile(Byte* filebuff, Dword filesize);
45
};