Tiff对比BigTiff

时间:2017-04-12 18:23:30

标签: tiff

如果还有其他Stack Exchange社区,请告诉我这个问题更适合。

我试图了解Tiff和BigTiff之间的基本区别。我查看了各种网站,唯一的区别是BigTiff使用64位偏移,而Tiff使用32位偏移。话虽这么说,你需要知道你正在阅读的两种类型中的哪一种。这是怎么做到的?根据{{​​3}},这是通过读取文件标志来完成的。但是,他们所指的标志似乎对他们自己的读者来说是唯一的,因为我在https://www.leadtools.com/help/leadtools/v19/main/api/tifffmt.html所示的规范中找不到相应的数据字段。我错过了什么? BigTiff是否使用与Tiff不同的文件头?

1 个答案:

答案 0 :(得分:1)

@cgohlke发布的the BigTIFF link中描述了您需要了解的所有内容。这只是为了回答你的问题:

是的,它使用不同的文件头。

普通 TIFF 使用以下标题:

  • 2字节字节顺序标记,“II”表示“Intel”/ little endian,或“MM”表示“Motorola”/ big endian。
  • (版本)编号42 *为16位值,以字节顺序给出。
  • 无符号32位偏移到IFD0

BigTIFF 使用略有不同的标题:

  • 如上所述的2字节字节顺序标记
  • (版本)编号43为16位值,以字节顺序给出。
  • 偏移的字节大小为16位值,对于BigTIFF
  • 始终为8
  • 2字节填充,对于BigTIFF
  • 始终为0
  • 无符号64位偏移到IFD0

*)选择值42是因为其“深刻的哲学意义”。或者根据官方规范,“[a] n任意但精心挑选的数字” ......