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

📄 dib.h

📁 读入图像序列
💻 H
字号:
// DIB.h: interface for the CDIB class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_DIB_H__E2798D01_5370_4977_B88C_6C812B93B394__INCLUDED_)
#define AFX_DIB_H__E2798D01_5370_4977_B88C_6C812B93B394__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#define DIB_HEADER_MARKER ((WORD)('M'<<8)|'B') //bfType="BM"
#define IS_WIN30_DIB(lpbi) (*(LPDWORD)lpbi==sizeof(BITMAPINFOHEADER))
#define PALVERSION 0x300
//计算矩形区域的宽度
#define RECTWIDTH(lpRect) ((lpRect)->right-(lpRect)->left)
//计算矩形区域的高度
#define RECTHEIGHT(lpRect) ((lpRect)->bottom-(lpRect)->top)
////计算图像实际的宽度,以字节计算,输入:位
#define WIDTHBYTES(bits) (((bits)+31)/32*4)

DECLARE_HANDLE(HDIB); //声明HDIB句柄


class CDIB  
{
public:
	BOOL SaveDIB(HDIB hDib,CFile& file);
	BOOL SaveDIB(LPCTSTR lpszPathName);
	CDIB(CDIB* pDIB,int _left,int _top,int _right,int _bottom);
	CDIB(CDIB* pDIB,int mywidth,int myheight);
	CSize GetDIBSize();
	WORD PaletteSize(LPSTR lpbi);
	LPSTR FindDIBBits(LPSTR lpbi);
	BOOL PaintDIB(HDC hDC,LPRECT lpDCRect);
	HDIB GetHDIB() const;
	BOOL CreateDIBPalette(HDIB hDIB,CPalette *cPal);
	WORD NumColors(LPSTR lpbi);
	CSize GetDIBSize(LPSTR lpDIB);
	HDIB CreateDIB(LPCTSTR lpPathName);
	HDIB ReadDIBFile(CFile& file);
	CDIB(LPCTSTR lpPathName);
	CDIB();
	virtual ~CDIB();

	BOOL InteEqualize(LPSTR lpDIBBits, LONG lWidth, LONG lHeight);
	
private:
	HDIB m_hDIB;//DIB图像句柄
	CPalette* m_pPal; //主要用于显示图像
	CSize m_sizeDIB;//DIB图像的尺寸(长×宽,像素)

public:
	void SetEmpty();
};

#endif // !defined(AFX_DIB_H__E2798D01_5370_4977_B88C_6C812B93B394__INCLUDED_)

⌨️ 快捷键说明

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