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

📄 gif_pic.h

📁 GIF图片解压成RGB格式的程序
💻 H
字号:
/********************************************************************/
/*       本软件所有权归深圳诺亚舟软件有限公司,任何未经          	*/
/*   授权使用或复制均属侵权行为,本公司有权予以追究。            	*/
/*                                        特  此  审  明!         	*/
/*  文件名:   Forula.h                                             	*/
/*  功  能:   公式显示,分析控件的头文件                          	*/
/*  版  本:   V0.10                                                	*/
/*  作  者: 														*/
/********************************************************************/
#ifndef _GIF_PIC_H
#define _GIF_PIC_H

/*****************************************************
* 常量定义区域
*****************************************************/
#define	INDENT_SPACES 4		//图片移动的幅度
#define MAX_ZOOM	3		//图片可以放大缩小的倍数

#ifdef WIN32
typedef long INT32;
#endif
/*****************************************************
* 结构定义区域
*****************************************************/
//GIF数据结构定义
typedef struct _Image
{
	WORD  Type;
	WORD  width;
	WORD  height;
	WORD  PageSize;
	WORD  ColorBytes;
	BYTE  **Data;
	BYTE  *Color;
}Image;

//定义各项错误代码常量
#define SUCCESS 0		//读取或者写入文件成功
#define FILEERROR 1		//找不到文件
#define MEMERROR 2		//存储空间不足
#define LABELERROR 3	//文件识别信息错误
#define COLORERROR 4	//该颜色模式无法处理
#define READERROR 5		//读取识别信息发生错误
#define DECODEERROR 6	//读取图象数据时发生错误
#define WRITEERROR 7	//写入识别信息时发生错误
#define ENCODEERROR 8	//写入图象数据时发生错误

//JPEG数据结构定义
//typedef void SET_DISP_BUF(/*HWND hWnd,*/BYTE *jpegline,int widthPix,BYTE *outBuf,int row,BYTE mode);
typedef void SET_GIF_DISP_BUF(/*HWND hWnd,*/BYTE *jpegline,int widthPix,BYTE *outBuf,int row,BYTE mode,BYTE* Color);

typedef struct _PICVIEW_OBJ
{
	//DWORD  nFileOffset;		//当前文件的偏移
	//DWORD  dPicWidth;		//图象的宽度
	//DWORD  dPicHeight;		//图象的高度
	//BYTE * pPictureBuf;		//图象缓冲区
	//PFILE PicFile;		//图象的文件名(包括路径)
	//BYTE   fZoomSat;		//放大缩小标志
							//=0,正常倍数
							//=1,放大1倍
							//=2,放大2倍
							//=3,放大3倍
							//=0x81,缩小1倍
							//=0x82,缩小1倍
							//=0x83,缩小1倍

	//输入变量
	//BYTE   nDispMode;		//图象显示的模式
							// = COLOR_DOUBLE,表示显示黑白色图片
							// = COLOR_FOUR,表示显示4色图片
							// = COLOR_SIXTEEN,表示显示16色图片
	//WORD   nDispPosX;		//图象显示窗口的x坐标
	//WORD   nDispPosY;		//图象显示窗口的y坐标
	//WORD   nDispWidth;		//图象显示窗口的宽度
	//WORD   nDispHeight;		//图象显示窗口的高度

	//窗口的属性
	//WORD   nWinPosWidth;	//窗口的宽度
	//WORD   nWinPosHeight;	//窗口的高度
	//WORD   nWinFactWidth;	//显示图片的实际宽度
	//WORD   nWinFactHeight;
//	HWND   hTimer;			//时间记数器

	//重新合成的显示图片数据
	//WORD   nPicBufWidth;	//显示部分的图象宽度
	//WORD   nPicBufHeight;	//显示部分的图象高度

	//标志位变量
	BYTE   fError;			//错误标志位
							// =0,正常
							// =1,无法打开图片文件
							// =2,图片格式错误
							// =3, 无法申请内存
							// =4, 文件读取错误
							// =5, 为压缩模式的bmp图象

	//PFILE hPicture;		//打开文件的句柄

	//GIF定义
	WORD   nColorBytes;
	BYTE   nPicIdx;				//gif动画当前的显示桢数
	BYTE   nMaxPic;				//gif动画的最大桢数
	WORD   PicTimeDelayBuf[64];	//gif动画的延时时间
	BYTE*  pExternPattle;		//gif全局颜色存贮缓冲区
	Image* pImg[64];			//gif图片全局数据
	SET_GIF_DISP_BUF* pSetGifDispBuf;	//将GIF的一行数据进行处理,得到显示缓冲区
										//主要用来处理放大缩小的函数

}PICVIEW_OBJ;

typedef PICVIEW_OBJ* HPICVIEW;
extern HPICVIEW hPicview;

//GIF函数声明
Image* ImageGifFileRead(PFILE File);
Image* ImageAlloc(WORD Type,WORD Width,WORD Height, WORD Color);
void GifImageFree(Image *Img );
void ImgConverDIB(WORD* Ptr, Image* Img);
BOOL InitGetGifData(PFILE File);
void GifMemFree(void);
void GetGifInfo(WORD* pWidth, WORD* pHeight, PFILE File);
void GifDataToDIB(WORD* Ptr, Image* Img);
void ZoomDIB(WORD* DestPtr, WORD* ScrPtr, RECT gRect);

/****************************************************/
#endif	//_PIC_VIEW_H

⌨️ 快捷键说明

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