⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ddb.h

📁 使用大恒采集卡的图像显示
💻 H
字号:
// Ddb.h: interface for the CDdb class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_DDB_H__6A8FFE8D_6AEC_4E7D_A2B1_ACD9615589DB__INCLUDED_)
#define AFX_DDB_H__6A8FFE8D_6AEC_4E7D_A2B1_ACD9615589DB__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

class CDdb : public CObject  
{
	DECLARE_DYNAMIC(CDdb);
public:
	CDdb();
	virtual ~CDdb();

#ifdef _DEBUG
	virtual void Dump(CDumpContext& dc)const;
	virtual void AssertValid()const;
#endif
public:
	BOOL Draw(CDC* pDstDC,int x,int y,int nWidth,int nHeight,int xSrc,int ySrc,int nSrcWidth,int nSrcHeight,DWORD dwRop);
	void Save256(const char* pszDibFileName,int x,int y,int nWidth,int nHeight);
	void Save(const char* pszDibFileName,int x, int y,int nWidth,int nHeight);
	void QuantizeColor(LPBYTE lpbyDdbBits24,int nScanWidth,int nScanHeight,LPBYTE lpbyDdbBits8,CPalette* pPalette);
	void GetDdbDataTo32(int x,int y,int nWidth,int nHeight,LPBYTE lpbyBits32);
	void GetDdbDataTo24(int x,int y,int nWidth,int nHeight,LPBYTE lpbyBits24);
	DWORD SetBitmapBits(int x,int y,int nWidth,int nHeight,int nBitCount,LPBYTE lpbyBits);
	DWORD SetBitmapBits(DWORD dwCount,const void* lpbyBits);
	LONG CalcDdbWidthBytes(LONG nWidth,BYTE byBitCount);
	LONG GetDdbWidthBytes()const;
	LONG GetHeight()const;
	LONG GetWidth()const;
	BYTE GetBitCount()const;
	BYTE* GetDdbData()const;
	void SetDdb(CBitmap* pBitmap);
	void ClearMemory();
	CDdb(CBitmap* pBitmap);
	CBitmap* m_pDdb;
protected:
	void GetSystemPaletteEntries(RGBQUAD* pRGBQuad);
	BYTE* m_pDdbData;
	BYTE m_nBitCount;
	LONG m_nHeight;
	LONG m_nWidth;
	LONG m_nDdbWidthBytes;
	HGLOBAL m_hDdbData;

private:
	void GetRGB16(BYTE* pbyRGB,WORD* pwColor);
	LONG CalcDibWidthBytes(LONG nWidth,BYTE byBitCount);
};

#endif // !defined(AFX_DDB_H__6A8FFE8D_6AEC_4E7D_A2B1_ACD9615589DB__INCLUDED_)

⌨️ 快捷键说明

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