【转】分析PNG图像文件结构(4)
来源:互联网 发布:网络咨询流程图 编辑:程序博客网 时间:2024/04/27 19:13
在未得到原作者的同意下转载,特地在此贴出源地址以作声明:http://wmnmtm.blog.163.com/blog/static/38245714201062355953256/
--------------------------------华丽的分割线----------------------------
表5-19所示为pic1.png图像文件中的gAMA数据块各字段的含义。
表5-19 pic1.png图像文件中的gAMA数据块各字段的含义
十六进制值
描 述
00 00 00 04
gAMA数据块的长度,00 00 00 04 = 4
67 41 4D 41
数据块类型标志,67 41 4D 41的ASCII值等于gAMA
00 00 B1 8E
gamma校正信息
7C F8 51 93
CRC值
继续分析下面的数据,按照前面的分析方法,分析出接下来的数据块是cHRM,cHRM是在设备不能够显示正确的颜色时,使图像尽可能校正颜色的信息,也叫做设备无关的颜色信息。
cHRM数据块的结构可以用以下代码定义:
typedef struct {uint x; uint y;} PNG_POINT;typedef struct {PNG_POINT white;PNG_POINT red;PNG_POINT green;PNG_POINT blue;} PNG_CHRM_CHUNK_DATA;PNG_CHUNK_HEADER chunkHdr;PNG_CHRM_CHUNK_DATA chrmChunkData;DWORD chrmCrc;
图5-23所示为pic1.png中的cHRM的数据结构。查看大图 (点击查看大图)图5-23 pic1.png图像文件中cHRM数据块结构
表5-20所示为pic1.png图像文件中的cHRM数据块各字段的含义。
表5-20 pic1.png图像文件中的cHRM数据块各字段的含义
十六进制值
描 述
00 00 00 20
cHRM数据块的长度,00 00 00 20 = 32
63 48 52 4D
数据块类型标志,63 48 52 4D的ASCII值等于cHRM
00 00 7A 25
白色点的x轴坐标,00 00 7A 25 = 31269
续表
十六进制值
描 述
00 00 80 83
白色点的y轴坐标,00 00 80 83 = 32899
00 00 F9 FF
红x坐标,00 00 F9 FF = 63999
00 00 80 E9
红y坐标,00 00 80 E9 = 33001
00 00 75 30
绿x坐标,00 00 75 30 = 30000
00 00 EA 60
绿y坐标,00 00 EA 60 = 60000
00 00 3A 98
蓝x坐标,00 00 3A 98 = 15000
00 00 17 6F
蓝x坐标,00 00 17 6F = 5999
92 5F C5 46
CRC值
继续分析下面的数据,按照前面的分析方法,分析出接下来的数据块是调色板数据块(PLTE),因为pic1.png是256色图像,所以应该有256个调色板项,每个调色板项占3字节。
调色板数据块(PLTE)的结构可以用以下代码定义:
typedef struct {BYTE btRed; BYTE btGreen;BYTE btBlue;} PNG_PALETTE_PIXEL;PNG_CHUNK_HEADER chunkHdr;PNG_PALETTE_PIXEL plteChunkData[chunkHdr.btChunkLen/3];DWORD plteCrc;
- 【转】分析PNG图像文件结构(4)
- 【转】分析PNG图像文件结构(1)
- 【转】分析PNG图像文件结构(2)
- 【转】分析PNG图像文件结构(3)
- 【转】分析PNG图像文件结构(5)
- 【转】分析PNG图像文件结构(6)
- 【转】PNG图像文件存储结构(4)
- 分析PNG图像文件结构
- 【转】PNG图像文件存储结构(1)
- 【转】PNG图像文件存储结构(2)
- 【转】PNG图像文件存储结构(3)
- PNG图像文件结构解析
- 【转】分析BMP图像文件结构(1)
- 【转】分析BMP图像文件结构(2)
- 【转】分析BMP图像文件结构(3)
- 【转】PNG图像文件介绍
- 【转】BMP图像文件存储结构(1)
- 【转】BMP图像文件存储结构(2)
- paip.提升安全性----软键盘的弱点
- 2012天津赛区网络赛第一题---Faulty Odometer(hdu4278)
- mmc子系统学习笔记四 mmc子系统的结构组织
- 【转】分析PNG图像文件结构(3)
- 字符串移动(字符串为*号和26个字母的任意组合,把*号都移动到最左侧,把字母移到最右侧并保持相对顺序不变),要求时间和空间复杂度最小 .
- 【转】分析PNG图像文件结构(4)
- 线程和进程的联系和区别
- 【ACMICPC Chengdu Online】1004 数论,类Fib
- 浅淡Servlet技术
- [统计数对] 题解
- 生成 一定范围内的随机数
- 找因数,找相同
- android数据存储(shared preferences)
- mmc子系统学习笔记三 mmc子系统知识储备