亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? gif.h

?? 《精通 vc++ 圖像編程》的源代碼
?? H
字號:
// Gif.h: interface for the CGif class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_GIF_H__82031240_001C_11D3_9481_000021003EA5__INCLUDED_)
#define AFX_GIF_H__82031240_001C_11D3_9481_000021003EA5__INCLUDED_

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

#include "Dib.h"

//////////////////////////////////////////////////////////////////
// constants
//
#define MAXCOLORMAPSIZE			256
#define CM_RED					0
#define CM_GREEN				1
#define CM_BLUE					2
#define MAX_LZW_BITS			12
#define BITS				    12
#define HSIZE					5003            /* 80% occupancy */
#define INTERLACE				0x40
#define LOCALCOLORMAP			0x80

//////////////////////////////////////////////////////////////////
// macros
//
#define BitSet(byte,bit)		(((byte) & (bit))==(bit))
#define ReadOK(file,buffer,len) (fread(buffer,len,1,file)!=0)
#define LM_to_uint(a,b)			(((b)<<8)|(a))
#define MAXCODE(n_bits)        (((code_int) 1 << (n_bits)) - 1)

//////////////////////////////////////////////////////////////////
// owner type
//
typedef short int				code_int;	/* was int */
typedef long int				count_int;
typedef unsigned char			pixval;
typedef unsigned char			char_type;

//////////////////////////////////////////////////////////////////
// structures
//
typedef struct tagGIFSCREEN
{
	unsigned int Width;
	unsigned int Height;
	unsigned char ColorMap[3][MAXCOLORMAPSIZE];
	unsigned int BitPixel;
	unsigned int ColorResolution;
	unsigned int BackGround;
	unsigned int AspectRatio;
} GIFSCREEN;

typedef struct tagGIF89
{
	int transparent;
	int delayTime;
	int inputFlag;
	int disposal;
} GIF89;

////////////////////////////////////////////////////////////
// class CGif
//
class CGif  
{
// constructor
public:
	CGif();
	CGif(CDib *pDib);
	virtual ~CGif();

// public functions
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 GIF file
	BOOL Load(LPCTSTR lpstrFileName);
	// save GIF file
	BOOL Save(LPCTSTR lpstrFileName, CDib* pDib = NULL);
	// get error string
	CString GetErrorString();

// internal functions
private:
	// read to RGB
	LPBYTE ReadGIFFile(LPCTSTR lpstrFileName, UINT *uWidth, UINT *uHeight);
	// write 256 RGB to file
	BOOL WriteGIFFile(LPCTSTR lpstrFileName, BYTE* buf, int GWidth, int GHeight,
					  int BackGround, int Red[], int Green[], int Blue[]);
	// free allocate memory
	void FreeBuffer(BYTE *Buffer);
	int	ReadColorMap (FILE *fd, int number, BYTE buffer[3][MAXCOLORMAPSIZE]);
	int	DoExtension (FILE *fd,int label);
	int	GetDataBlock (FILE *fd, BYTE *buf);
	int	GetCode (FILE *fd, int code_size, int flag);
	int	LZWReadByte (FILE *fd,int flag, int  input_code_size);
	BOOL ReadImage(FILE *fd, BYTE  * bigMemBuf, int width, int height,
				   BYTE cmap[3][MAXCOLORMAPSIZE], int interlace);
	void BumpPixel();
	int GIFNextPixel();
	void Putword(int w, FILE* fp);
	void compress(int init_bits, FILE* outfile);
	void output(code_int code);
	void cl_block();
	void cl_hash(count_int hsize);
	void writeerr();
	void char_init();
	void char_out(int c);
	void flush_char();
	BYTE* MakeDwordAlign(BYTE *dataBuf,			// input buf
						 UINT widthPix,				// input pixels
						 UINT height,				// lines
						 UINT *uiOutWidthBytes);	// new width bytes
	BYTE* ClearDwordAlign(BYTE *inBuf,				// input buf
						UINT widthPix,				// input size
						UINT height,
						UINT nBpp);
	BOOL VertFlipBuf(BYTE * inbuf,						// input buf
				   UINT widthBytes,							// input width bytes
				   UINT height);							// height
	BOOL BGRFromRGB(BYTE *buf,							// input buf
					UINT widthPix,								// width in pixels
					UINT height);								// lines

// priovate data
private:
	// attributes
	CDib*	m_pDib;

	// data
	int		ZeroDataBlock;
	CString m_strGIFError;

	int 			Width, Height;
	int				curx, cury;
	long 			CountDown;
	unsigned long	cur_accum;
	int				cur_bits;
	unsigned char	*buffer;

	int n_bits;                         /* number of bits/code */
	int maxbits;						/* user settable max # bits/code */
	code_int maxcode;                   /* maximum code, given n_bits */
	code_int maxmaxcode;				/* should NEVER generate this code */
	count_int htab [HSIZE];
	unsigned short codetab [HSIZE];
	code_int free_ent;                  /* first unused entry */
	int clear_flg;
	int g_init_bits;
	FILE* g_outfile;
	int ClearCode;
	int EOFCode;

	int a_count;
	char accum[256];
};

#endif // !defined(AFX_GIF_H__82031240_001C_11D3_9481_000021003EA5__INCLUDED_)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
97国产精品videossex| 欧美一区二区三区色| a在线播放不卡| 色综合色综合色综合色综合色综合| 色综合色综合色综合| 欧美一区二区三区性视频| 久久久久久久久久美女| 中文字幕佐山爱一区二区免费| 偷拍一区二区三区四区| 精品一区二区日韩| aaa欧美日韩| 666欧美在线视频| 欧美国产精品专区| 亚洲成人激情综合网| 国产一区二区在线影院| 在线视频欧美区| www亚洲一区| 亚洲国产美国国产综合一区二区 | 777久久久精品| 欧美国产日韩一二三区| 亚洲国产aⅴ天堂久久| 国产精品一区二区在线观看网站| 色婷婷综合激情| 26uuu另类欧美亚洲曰本| 一区二区三区在线视频观看| 久久精品国产亚洲aⅴ| 色婷婷综合久色| 久久综合久久综合久久综合| 亚洲国产视频一区| 国产iv一区二区三区| 91精品一区二区三区久久久久久| 国产精品乱码人人做人人爱 | 欧美视频一区二区在线观看| 久久久三级国产网站| 亚洲一区二三区| 成人综合激情网| 欧美一区二区三区四区视频| 亚洲色图制服诱惑 | 国产精品传媒入口麻豆| 麻豆精品一区二区综合av| 色综合天天做天天爱| 久久久噜噜噜久久人人看| 丝袜美腿亚洲一区| 一本色道久久加勒比精品| 久久女同精品一区二区| 视频一区二区三区入口| 91老司机福利 在线| 国产亚洲一二三区| 久久成人综合网| 欧美日韩激情一区| 亚洲美女视频在线| 91香蕉视频在线| 国产日韩欧美高清| 激情五月激情综合网| 4438x成人网最大色成网站| 一区二区三区视频在线看| 懂色一区二区三区免费观看| xf在线a精品一区二区视频网站| 日本欧美一区二区| 884aa四虎影成人精品一区| 亚洲高清在线视频| 欧美性大战xxxxx久久久| 亚洲免费在线视频| 色8久久精品久久久久久蜜| 中文字幕一区二区三区在线不卡| 国产**成人网毛片九色 | 国产综合色产在线精品| 精品欧美久久久| 久久精品999| 日韩欧美成人午夜| 麻豆精品视频在线观看视频| 日韩一区国产二区欧美三区| 91一区在线观看| 亚洲国产高清不卡| 成熟亚洲日本毛茸茸凸凹| 国产精品久久久久桃色tv| 国产xxx精品视频大全| 国产欧美久久久精品影院| 国产成人av一区二区三区在线 | 美女视频黄免费的久久 | 国内成人精品2018免费看| 日韩丝袜美女视频| 精品在线观看免费| 久久亚洲综合av| 国产成人在线影院| 国产精品成人一区二区艾草| 99视频在线观看一区三区| 亚洲精品欧美在线| 欧美在线不卡视频| 午夜欧美电影在线观看| 日韩一区二区三区精品视频| 麻豆精品在线观看| 国产日韩欧美精品一区| 91浏览器在线视频| 亚洲成人av免费| 日韩一区和二区| 国产河南妇女毛片精品久久久| 亚洲国产精品99久久久久久久久 | 亚洲欧美一区二区三区极速播放 | 久久久久久久av麻豆果冻| 东方aⅴ免费观看久久av| 亚洲色图清纯唯美| 欧美精品三级在线观看| 精品一区中文字幕| 国产精品系列在线| 欧美影院精品一区| 伦理电影国产精品| 国产日韩av一区| 在线观看一区二区视频| 男女视频一区二区| 国产精品视频一二三| 在线视频国内一区二区| 蜜臀精品一区二区三区在线观看 | 国产精品中文有码| 亚洲乱码精品一二三四区日韩在线| 欧美色综合天天久久综合精品| 免费欧美日韩国产三级电影| 国产女主播在线一区二区| 欧美怡红院视频| 国内精品久久久久影院薰衣草| 中文字幕亚洲综合久久菠萝蜜| 欧美日韩在线播放三区| 国产真实精品久久二三区| 亚洲欧美成人一区二区三区| 日韩午夜在线观看| 96av麻豆蜜桃一区二区| 在线观看亚洲成人| 国产精品综合av一区二区国产馆| 亚洲私人影院在线观看| 日韩欧美国产三级| 91欧美一区二区| 久久91精品久久久久久秒播| 自拍偷拍欧美精品| 精品粉嫩aⅴ一区二区三区四区| 色天使色偷偷av一区二区| 精品一区二区三区影院在线午夜| 亚洲欧洲综合另类在线| 久久久久久影视| 欧美男生操女生| 成人av电影观看| 久久激情五月婷婷| 亚洲一区av在线| 国产精品人成在线观看免费| 日韩美女视频一区二区在线观看| 色综合夜色一区| 国产成人精品影院| 久久国产精品99精品国产| 亚洲一区二区三区四区在线| 欧美国产日韩a欧美在线观看| 欧美一区中文字幕| 在线观看亚洲精品| 成人黄色电影在线 | 欧美男同性恋视频网站| 一区二区三区免费在线观看| 亚洲天堂福利av| 欧美激情在线看| 制服丝袜一区二区三区| 91污片在线观看| 国产成人高清视频| 久久精品av麻豆的观看方式| 丝袜国产日韩另类美女| 亚洲一卡二卡三卡四卡无卡久久| 日本一区二区三区国色天香| 久久天天做天天爱综合色| 日韩一区二区电影| 欧美欧美欧美欧美首页| 欧美视频一区在线观看| 在线精品视频小说1| 一本到不卡免费一区二区| 懂色av一区二区三区蜜臀| 国产成人久久精品77777最新版本| 久久精品国产澳门| 老司机精品视频一区二区三区| 亚瑟在线精品视频| 一区二区三国产精华液| 一区二区三区在线视频播放| 亚洲欧美电影一区二区| 亚洲啪啪综合av一区二区三区| 中文字幕在线观看一区| 国产精品美女久久久久久久久| 中文字幕第一页久久| 国产蜜臀av在线一区二区三区| 久久久久久久网| 日本一区二区高清| 国产精品久久毛片av大全日韩| 中文字幕不卡的av| 中文字幕国产一区| 亚洲欧美日韩一区二区| 亚洲欧美一区二区三区极速播放 | heyzo一本久久综合| 成人av综合在线| 懂色av一区二区三区免费观看| 成人免费视频app| 97精品视频在线观看自产线路二| aaa亚洲精品| 欧美优质美女网站| 欧美丰满少妇xxxbbb| 日韩欧美国产综合| 国产午夜精品久久久久久久 | 国产成人夜色高潮福利影视|