📄 dib.h
字号:
/////////////////////////////////////////////////////////////////////////////////
//
// Dib.h: interface for the CDib class.
//
////////////////////////////////////////////////////////////////////////////////
// 版权所有(2002)
// Copyright(2002)
// 编写者: 向世明
// Author: Xiang Shiming
#ifndef _CDIB_H
#define _CDIB_H
class CDib : public CObject
{
DECLARE_DYNAMIC(CDib)
protected:
BOOL m_bValid; //是否有效
RGBQUAD* m_pRGBQuad; //RGBQUAD 表项
BYTE* m_pDibData; //位图像素数据
LONG m_nWidth; //宽度
LONG m_nHeight; //高度
BYTE m_nBitCount; //每个像素占有的位数
UINT m_nTotalColors; //颜色总数
char* m_pszFileName;
BITMAPFILEHEADER* m_pBitmapFileHeader;
BITMAPINFOHEADER* m_pBitmapInfoHeader;
BITMAPINFO* m_pBitmapInfo;
HGLOBAL m_hDIB;
public:
CDib();
CDib(const char* pszDibFileName);
~CDib();
int Draw(HDC hdc, int XDest, int YDest, int nDestWidth, int nDestHeight, int XSrc, int YSrc, int nSrcWidth, int nSrcHeight, UINT iUsage, DWORD dwRop);
DWORD GetDdbData32(LPBYTE lpbyDdb32);
DWORD GetDdbData24(LPBYTE lpbyDdb24);
DWORD GetDibWidthBytes(int nWidth, BYTE byBitCount);
BYTE GetBitCount() const;
DWORD GetSize();
LONG GetWidth() const;
LONG GetHeight() const;
UINT GetColorNumber() const;
char* GetFileName() const;
BOOL IsValid() const ;
RGBQUAD* GetRGBQuad() const ;
BYTE* GetDibData() const ;
BITMAPINFO* GetBmpInfo() const;
public:
void ClearMemory();
HPALETTE CreateBitmapPalette();
#ifdef _DEBUG
virtual void Dump(CDumpContext& dc) const;
virtual void AssertValid() const;
#endif
protected:
void LoadFile(const char* pszDibFileName);
private:
void Init();
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -