cdib.h

来自「vc++数字图像处理 ,是一本很不错的介绍数字图像方面的书籍,这里有本书的全部源」· C头文件 代码 · 共 56 行

H
56
字号
// cdib.h declaration for Inside Visual C++ CDib class#ifndef _INSIDE_VISUAL_CPP_CDIB#define _INSIDE_VISUAL_CPP_CDIBclass CDib : public CObject{	enum Alloc {noAlloc, crtAlloc, heapAlloc};	DECLARE_SERIAL(CDib)public:	LPVOID m_lpvColorTable;	HBITMAP m_hBitmap;	LPBYTE m_lpImage;  // starting address of DIB bits	LPBITMAPINFOHEADER m_lpBMIH; //  buffer containing the BITMAPINFOHEADERprivate:	HGLOBAL m_hGlobal; // For external windows we need to free;	                   //  could be allocated by this class or allocated externally	Alloc m_nBmihAlloc;	Alloc m_nImageAlloc;	DWORD m_dwSizeImage; // of bits -- not BITMAPINFOHEADER or BITMAPFILEHEADER	int m_nColorTableEntries;		HANDLE m_hFile;	HANDLE m_hMap;	LPVOID m_lpvFile;	HPALETTE m_hPalette;public:	CDib();	CDib(CSize size, int nBitCount);	// builds BITMAPINFOHEADER	~CDib();	int GetSizeImage() {return m_dwSizeImage;}	int GetSizeHeader()		{return sizeof(BITMAPINFOHEADER) + sizeof(RGBQUAD) * m_nColorTableEntries;}	CSize GetDimensions();	BOOL AttachMapFile(const char* strPathname, BOOL bShare = FALSE);	BOOL CopyToMapFile(const char* strPathname);	BOOL AttachMemory(LPVOID lpvMem, BOOL bMustDelete = FALSE, HGLOBAL hGlobal = NULL);	BOOL Draw(CDC* pDC, CPoint origin, CSize size);  // until we implemnt CreateDibSection	HBITMAP CreateSection(CDC* pDC = NULL);	UINT UsePalette(CDC* pDC, BOOL bBackground = FALSE);	BOOL MakePalette();	BOOL SetSystemPalette(CDC* pDC);	BOOL Compress(CDC* pDC, BOOL bCompress = TRUE); // FALSE means decompress	HBITMAP CreateBitmap(CDC* pDC);	BOOL Read(CFile* pFile);	BOOL ReadSection(CFile* pFile, CDC* pDC = NULL);	BOOL Write(CFile* pFile);	void Serialize(CArchive& ar);	void Empty();private:	void DetachMapFile();	void ComputePaletteSize(int nBitCount);	void ComputeMetrics();};#endif // _INSIDE_VISUAL_CPP_CDIB

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?