缩略图是存储在文件内部的一张小型预览图片。它让程序无需打开和处理整个文件,就能显示文件的大致内容,这也是为什么一个装满照片或文档的文件夹几乎能立刻显示预览。
哪些文件包含它以及该数值从何而来
视频文件、照片、相机的 raw 原始图像、矢量图形和文档都可以包含缩略图,任何包含值得预览的图像数据的格式也都可以拥有缩略图。相机的 raw 文件通常会以不同尺寸存储不止一个预览图。
预览显示的内容取决于文件类型。对于图片,它是图片的缩略副本;对于视频,它是从视频流中截取的一帧静态画面;对于文档,通常是将第一页渲染成图片;音乐文件则在专用字段中保存封面图片,附加图片(Attached Pic)一文对此有详细说明。
缩略图由创建该文件的程序生成:相机在保存照片时生成一张,图像编辑器在你保存修改时重新生成一张,而文档编辑应用在创建文档时生成一张。这个缩略图不是人工手动挑选的。
该数值的格式
元数据报告无法在文本表格中直接打印图片,因此这一行会改为描述这些数据。第一部分说明数据类型--几乎总是二进制数据,表示原始字节而不是可读文本;第二部分则给出它的大小:
Thumbnail Image: (Binary data 8958 bytes, use -b to extract)
附近的行会补充更多细节,通常包括以字节为单位的缩略图长度 (Thumbnail Length)、标记预览在文件内部位置的缩略图偏移量 (Thumbnail Offset),有时还包括其尺寸。嵌入式照片缩略图本身就很小,160×120 像素是一种常见尺寸。
它的重要性
日常使用中的好处是速度。读取几千字节的预览远比解码一张 4000 万像素照片或一个 raw 文件要快得多,因此浏览、排序和选择文件时可以保持流畅。代价是占用少量空间:预览本身是存储在文件中的真实数据,删除它会让文件略微变小。
更需要留意的原因在于隐私。缩略图是图像的第二份、独立的副本,而且在主图片变化时并不总会被重新生成。如果某个程序只修改了主图片,却保留了原先嵌入的预览,那么导出的文件里仍然会带有旧版本的预览--例如你剪裁掉画面中某个人的部分、涂抹覆盖的区域、被模糊处理的细节。表面上看到的图像看起来已经正确编辑,但隐藏的预览仍然显示被你删掉的内容,任何人都可以用普通的元数据应用把这个预览从文件中提取出来。对于在首页重写之前就生成了预览的文档文件,同样存在这个问题。
因此,如果你编辑文件是为了刻意删除某些内容,不要假定缩略图也一并更新。请检查缩略图是否与你要分享的内容一致,或者直接删除元数据,这样会连同嵌入的预览一起清除。