Tiff 文件
图像文件头 IFH
Byte 0-1: 字节顺序标志位,
值为II或者MM。II表示小字节在前,又称为little-endian。MM表示大字节在前,又成为big-endian。 TIF标记,其值为4D4D或4949
Byte 2-3: TIFF的标志位,一般都是42
Byte 4-7: 第一个IFD的偏移量。可以在任意位置, 但必须是在一个字的边界,也就是说必须是2的整数倍。
图像文件目录 IFD
Byte 0-1: 表示此IFD包含了多少个DE,假设数目为n
Byte 2-(n*12+1): n个DE
Byte (n*12+2)-(n*12+5): 下一个IFD的偏移量,如果没有则设为0
目录项
Byte 0-1: 此TAG的唯一标识
Byte 2-3: 数据类型。
Byte 4-7: 数量。通过类型和数量可以确定存储此TAG的数据需要占据的字节数
Byte 8-11: 如果占用的字节数少于4, 则数据直接存于此。 如果超过4个,则这里存放的是指向实际数据的指针
数据类型:
type值 数据类型 说明
-------------------------------------------------------------------------------
0001 Byte
0002 Ascii 文本类型,7位Ascii码加1位二进制0
0003 Integer
0004 Long
0005 RATIONAL 分数类型,由两个Long组成,第1个是分子,第2个是分母
-------------------------------------------------------------------------------
TagID 属性名称 type 说明
----------------------------------------------------------------------------------------------------------------------------------------
0100 图像宽 0003
0101 图像高 0003
0102 颜色深度 0003 值=1为单色,=4为16色,=8为256色。如果该类型数据个数>2个,说明是真彩图像
0103 图像数据是否压缩 0003 值=05表示压缩
0106 图像是否采用反色显示 0003 值=01表示反色,否则表示不反色
0111 图像扫描线偏移量 0004 图像数据起始字节相对于文件开始处的位置
0116 图像扫描线的数量 0004 表示图像有几行扫描线,实际上等于图像高度
0117 图像数据字节总数 0003 如果不是偶数,那么实际存放时会在后面加0
011A 水平分辩率偏移量 0005 常用计量单位是:像素/英寸
011B 垂直分辩率 偏移量 0005 常用计量单位是:像素/英寸
0131 生成该图像的软件名 0002 文本类型
0132 生成该图像的时间 0002 文本类型
0140 调色板偏移量 0003 256色和16色图像才有此属性,而且有连续2个调色板,但属性的length值只表示出1 个调色板
--------------------------------------------------------------------------------------------------------------------------------------