www.pudn.com > RSImageManger.rar > BMPFILE.H


 
 
#define WIDTHBYTES(bits)    (((bits) + 31) / 32 * 4) 
#define BMP_HEADERSIZE (3 * 2 + 4 * 12) 
#define BMP_BYTESPERLINE (width, bits) ((((width) * (bits) + 31) / 32) * 4) 
#define BMP_PIXELSIZE(width, height, bits) (((((width) * (bits) + 31) / 32) * 4) * height) 
 
 
class BMPFile 
{ 
public: 
	// parameters 
	CString m_errorText; 
	DWORD m_bytesRead; 
 
public: 
 
	// operations 
 
	BMPFile(); 
 
	BYTE * LoadBMP(CString fileName, UINT *width, UINT *height); 
 
	void SaveBMP(CString fileName,		// output path 
							BYTE * buf,				// RGB buffer 
							UINT width,				// size 
							UINT height); 
 
	void SaveBMP(CString fileName, 			// output path 
							 BYTE * colormappedbuffer,	// one BYTE per pixel colomapped image 
							 UINT width, 
							 UINT height, 
 							 int bitsperpixel,			// 1, 4, 8 
							 int colors,				// number of colors (number of RGBQUADs) 
							 RGBQUAD *colormap);			// array of RGBQUADs  
 
};