maf*_*afu 6 jpeg file-format header
JPG 文件可以通过 FF FE 标记包含文本注释。我对此有几个问题:
如何指定评论的长度?如果注释位于文件末尾,是否可以根本不指定长度?
是否可以有一个有效的 jpg 文件,而不包含仅包含注释的图像?这样的文件在二进制中会是什么样子?我假设它会是:
FF D8 - SOI:图像开始(注意后面没有帧数据) FF D9 - EOI:图像结束 FF FE - COM:文字注释 (二进制)-(文本)
JPEG元数据存储在标签结构中,如下所示:
0xFF - 标签介绍者
0xXX - 标签值
0xXX 0xXX - 大端顺序的标签长度,包括长度 (2)
<标签数据(长度-2 字节)>
这种结构要求每个标签最多可以包含65534字节的元数据。对于较大的结构,真实长度值存储在标签数据中,并且多个标签包含整个结构。
评论标签的示例。它包括一个零终止符,但这不是必需的。
FF FE 00 08 48 45 4C 4C 4F 00 - “你好”
大多数 JPEG 段包含一个 2 字节标记(0xFFFE对于 COM),后跟段长度(2 字节)。有关更多详细信息,请参阅JPEG 语法和结构(维基百科)。您必须指定 COM 标记的长度字段。
仅具有表(仅 DHT 和 DQT 段)JPEG 且无图像数据是有效的。我认为没有表格或图像数据的方法是无效的,但至少您不需要图像数据。不确定它有多有用,或者大多数 JPEG 软件如何解释它......
仅表 JPEG 的用例是将其与“缩写流”(仅具有图像数据的 JPEG,无表)一起使用,以在多个图像之间共享公共表。