PNG图像文件格式结构分析

PNG图像文件格式结构分析

1.PNG图像格式介绍

概述

PNG(Portable Network Graphics),可移植网络图形格式文件,是一种采用无损压缩算法的位图格式,其设计目的是试图替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。PNG使用从LZ77派生的无损数据压缩算法,一般应用于JAVA程序、网页或S60程序中,原因是它压缩比高,生成文件体积小。

PNG数据块结构

PNG的每一个数据块又可分为四个域,分别为长度、类型、数据域、循环冗余检测。

1.长度:显示数据字段的长度信息,为4字节无符号整数,故数据长度限制在(2^31-1)字节。

2.类型:为4字节数据块类型码,为了便于描述和检查PNG文件,类型代码仅限于大写和小写的ASCII字母。

3.数据域:存储按照数据块类型码指定的数据, 该字段可以是长度为零。

4.循环冗余检测:一个4字节的CRC(循环冗余校验)计算,在所述块的前面的字节,包括该块类型的代码和数据块的数据字段,但是不包括长度字段。 CRC始终存在,即使不包含数据块。

文件结构

对于一个PNG文件来说,其文件头总是由位固定的字节来描述的:

  • 十进制数 137 80 78 71 13 10 26 10
  • 十六进制数 89 50 4E 47 0D 0A 1A 0A

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值