gif文件格式详解

gif文件格式详解

ID:35200258

大小:178.50 KB

页数:13页

时间:2019-03-21

gif文件格式详解_第1页
gif文件格式详解_第2页
gif文件格式详解_第3页
gif文件格式详解_第4页
gif文件格式详解_第5页
资源描述:

《gif文件格式详解》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、GIF文件格式详解6.2.1简介GIF(GraphicsInterchangeFormat)是CompuServe公司开发的图像文件存储格式,1987年开发的GIF文件格式版本号是GIF87a,1989年进行了扩充,扩充后的版本号定义为GIF89a。GIF图像文件以数据块(block)为单位来存储图像的相关信息。一个GIF文件由表示图形/图像的数据块、数据子块以及显示图形/图像的控制信息块组成,称为GIF数据流(DataStream)。数据流中的所有控制信息块和数据块都必须在文件头(Header)和文件结束块(Trailer)之间。GIF文件格

2、式采用了LZW(Lempel-ZivWalch)压缩算法来存储图像数据,定义了允许用户为图像设置背景的透明(transparency)属性。此外,GIF文件格式可在一个文件中存放多幅彩色图形/图像。如果在GIF文件中存放有多幅图,它们可以像演幻灯片那样显示或者像动画那样演示。6.2.2.文件结构GIF文件结构的典型结构如图6-01所示。为下文说明方便,在构件左边加了编号。图6-01GIF文件结构数据块可分成3类:控制块(ControlBlock),图形描绘块(Graphic-RenderingBlock)和专用块(SpecialPurposeB

3、lock)。(1)控制块:控制块包含有用来控制数据流(DataStream)或者设置硬件参数的信息,其成员包括:GIF文件头(Header)逻辑屏幕描述块(LogicalScreenDescriptor)图形控制扩展块(GraphicControlExtension)文件结束块(Trailer)(2)图形描绘块:包含有用来描绘在显示设备上显示图形的信息和数据,其成员包括:图像描述块(ImageDescriptor)无格式文本扩展块(PlainTextExtension)全局调色板、局部调色板、图像压缩数据和图像说明扩充块。(3)特殊用途数据块;

4、包含有与图像处理无关的信息,其成员包括:注释扩展块(CommentExtension)应用扩展块(ApplicationExtension)除了在控制块中的逻辑屏幕描述块(LogicalScreenDescriptor)和全局彩色表(GlobalColorTable)的作用范围是整个数据流(DataStream)之外,所有其他控制块仅跟在它们后面的图形描绘块。6.2.3构件详解1.GIF文件头文件头描述块(Header)定义GIF数据流(GIFDataStream),它的结构如图6-02所示。文件头描述块(Header)由GIF标记域(Sign

5、ature)和版本号(Version)域组成,是一个由6个固定字节组成的数据块,它们用来说明使用的文件格式是GIF格式及当前所用的版本号。GIF标记域(Signature)存放的是“GIF”,版本号域存放的是1987年5月发布的“87a”或者1989年7月发布的“89a”,或者更加新的版本号。图6-02标记/版本数据块的结构typedefstructgifheader    {       BYTEbySignature[3];       BYTEbyVersion[3];    }   GIFHEADER;2.逻辑屏幕描述块逻辑屏幕描述块(

6、LogicalScreenDescriptor)包含定义图像显示区域的参数,包括背景颜色信息。这个数据块中的坐标相对于虚拟屏幕的左上角,不一定是指显示屏的绝对坐标,这就意味可以参照窗口软件环境下的窗口坐标或者打印机坐标来设计图像显示程序。逻辑屏幕描述块的结构如图6-03所示:图6-03屏幕描述块的结构typedefstructgifscrdesc    {       WORDwWidth;       WORDwDepth;       structglobalflag          {             BYTEPalBits  

7、  :3;             BYTESortFlag   :1;             BYTEColorRes   :3;             BYTEGlobalPal:1;          }   GlobalFlag;       BYTEbyBackground;       BYTEbyAspect;    }   GIFSCRDESC;逻辑描述块包含7个字节。字节0和字节1用来说明逻辑显示屏的宽度,字节2和字节3用来说明逻辑显示屏的高度,字节4用来描述彩色表的属性,字节5用来指定背景颜色索引,字节6用来计算像素的宽

8、高比。现作如下说明:(1)屏幕描述块中的第5个字节称为包装域(PackedFields),它的位结构如图6-04所示,它由4个子域组成:①全局彩色表标

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。