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

📄 tga.h

📁 《精通 vc++ 图像编程》的源代码
💻 H
字号:
// Tga.h: interface for the CTga class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_TGA_H__FA4FE7A1_D785_48BD_A54E_69825D7EDE9D__INCLUDED_)
#define AFX_TGA_H__FA4FE7A1_D785_48BD_A54E_69825D7EDE9D__INCLUDED_

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

#include "Dib.h"

struct TGA_FILE_HEADER
{
  BYTE  byIdLength;
  BYTE  byColorMapType;
  BYTE  byImageType;
  short nColorMapFirstIndex;
  short nColorMapLength;
  BYTE  byColorMapEntrySize;
  short nXOrigin;
  short nYOrigin;
  short nImageWidth;
  short nImageHeight;
  BYTE  byPixelDepth;
  BYTE  byImageDescriptor;
};

struct TGA_FILE_FOOTER
{
  long lExtensionAreaOffset;
  long lDeveloperDirectoryOffset;
  char cSignature[18];
};

class AFX_EXT_CLASS CTga  
{
public:
	CTga();
	CTga(CDib *pDib);
	virtual ~CTga();

// function
public:
	// Get CDib
	CDib * GetDib()
	{
		return m_pDib;
	}
	//Set CDib
	BOOL SetDib(CDib *pDib)
	{
		if (pDib == NULL)
			return FALSE;

		if (m_pDib != NULL)
			delete m_pDib;

		m_pDib = pDib->Clone();

		return (m_pDib != NULL);
	}
	// Load TGA file
	BOOL Load(LPCTSTR lpstrFileName);
	// Save TGA file
	BOOL Save(LPCTSTR lpstrFileName, CDib* pDib = NULL);

protected:
	HDIB ReadTGAFile(CFile& file);
	BOOL SaveTGAFile(HDIB hDib, CFile& file);

private:
	CDib*	m_pDib;
};

#endif // !defined(AFX_TGA_H__FA4FE7A1_D785_48BD_A54E_69825D7EDE9D__INCLUDED_)

⌨️ 快捷键说明

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