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

📄 iedib.h

📁 很珍贵得视频编辑器原码及CODEC。需要安装下列CODEC.可播放多种格式的视频
💻 H
字号:
// IEDib.h: interface for the IEDib class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(_IEDIB_H_)
#define _IEDIB_H_

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

#pragma pack( push )
#pragma pack( 1 )
#ifndef RGBBYTE_TYPE
#define RGBBYTE_TYPE
typedef struct tagRGBBYTE
{
	BYTE b;
	BYTE g;
	BYTE r;
} RGBBYTE;
#endif
#pragma pack( pop )

#define limit(a) ( (a > 255) ? 255  : ( (a < 0) ? 0 : a ) )
#define limit2(a, b) ( (a > b) ? b  : ( (a < 0) ? 0 : a ) )

//class IEByteImage;

class IEDib
{
public:
	// 积己磊客 家戈磊
	IEDib();
	~IEDib();

/******************************************************
						糕滚 函荐
******************************************************/
public:
	// 拳搁 免仿 窃荐
	void        Draw(HDC hDC);
	void        Draw(HDC hDC, int dx, int dy);
	void        Draw(HDC hDC, int dx, int dy, int dw, int dh, DWORD dwRop = SRCCOPY);

	// 颇老 积己 棺 涝免仿 窃荐
	BOOL        CreateGrayImage(int nWidth, int nHeight, BYTE value = 255);
	BOOL        CreateRGBImage(int nWidth, int nHeight, COLORREF value = 0x00ffffff);
	BOOL        CopyImage(IEDib* pImage);
	BOOL        CopyImage(IEDib* pImage, CRect rect);
	BOOL        FromHandle(HANDLE hDib);
//	BOOL        FromImage(IEByteImage* pImage);
	BOOL        Load(LPCTSTR lpszFileName);
	BOOL        Save(LPCTSTR lpszFileName);

	// 侨伎 器牢磐 贸府 窃荐
	BYTE**      GetPtr();
	RGBBYTE**   GetRGBPtr();
	void        FreePtr(BYTE** ptr);
	void        FreePtr(RGBBYTE** ptr);
	
	// 捞固瘤 沥焊 馆券 窃荐
	int         GetHeight()	    { return m_nHeight; }
	int         GetWidth()      { return m_nWidth; }
	int         GetBitCount()   { return m_nBitCount; }
	BOOL        IsValid()       { return (m_hDib != NULL); }
	CPalette*   GetPalette()    { return m_pPal; }
	HANDLE      GetHandle()     { return (HANDLE)m_hDib; }
	int         GetColorNums();

protected:
	// 檬扁拳 殿阑 淬寸窍绰 郴何 窃荐
	BOOL        InitDib(LPSTR lpDib);
	BOOL        CreateDIBPalette(LPSTR lpDib);
	LPSTR       GetDibBitsAddr(LPSTR lpDib);
	int         SetSystemPalette(HDC hDC);

	// 角力 颇老 佬绢坷扁
	BOOL        LoadBMP(LPCTSTR lpszFileName);
	BOOL        LoadJPG(LPCTSTR lpszFileName);
//	BOOL        LoadGIF(LPCTSTR lpszFileName);
//	BOOL        LoadTIF(LPCTSTR lpszFileName);

	// 角力 颇老 历厘窍扁
	BOOL        SaveBMP(LPCTSTR lpszFileName);
	BOOL		SaveJPG(LPCTSTR lpszFileName);
//	BOOL		SaveGIF(LPCTSTR lpszFileName);
//	BOOL		SaveTIF(LPCTSTR lpszFileName);


/******************************************************
						糕滚 函荐
******************************************************/
protected:
	HGLOBAL	    m_hDib;
	int         m_nWidth;
	int         m_nHeight;
	int         m_nRWidth;
	int         m_nBitCount;
	CPalette*   m_pPal;
};

#endif // !defined(_IEDIB_H_)

⌨️ 快捷键说明

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