知识文章 · 编写日期 2026-11-10

海角网看图:PNG七遍是七张图吗

不是。Adam7把同一幅PNG静态图的像素位置分成七个子集,每个位置只属于其中一遍;七遍合起来才覆盖这幅图。以左上角8乘8位置块为例,各遍新增1、1、2、4、8、16、32个位置,合计64,不是重复发送七份完整图。

面向海角网相关图文阅读中的图片格式问题。依据W3C《PNG第三版》2025年6月24日建议标准,2026年11月10日查阅。只讲PNG静态图的像素传递顺序;配图为原创格子题,不包含任何真实论坛截图。

海角网PNG知识图:8乘8像素按Adam7七遍分配,右侧列各遍新增与累计位置
每个数字指该像素在哪一遍传递。七遍新增1、1、2、4、8、16、32个位置,合计64;图不是浏览器加载实测。 本站原创知识示意图;例子为教学设定,不是软件或实景截图。

先确认是在讨论哪种PNG

PNG图像头中,交错方法0表示按行顺序传递,方法1是Adam7七遍交错。Adam7每遍选取不同像素子集,最终组成同一幅图。[1] 这不是由文件名里的“高清”或网页描述决定的属性。

这里的“遍”指编码分配的一组像素位置。它与一张完整图、一个视频帧或一个网络请求不是同一个单位;不能看到数字7,就先假定每遍都保存同样多的位置。

把8乘8位置逐遍数一遍

图中取从左上角开始的8行8列位置块,并按规范的遍次分配规则标上1至7。数字只是位置标签:标1的格子在第一遍送达,标2的在第二遍,依次类推。

这个完整8乘8块的七遍新增位置数依次是1、1、2、4、8、16、32;累计是1、2、4、8、16、32、64。可以用图逐行点数,第七遍占四条交替整行,共4×8=32格;其余六遍共同补足另32格。

第三遍结束时只有4个位置,仍不是前三整行。由此可见,Adam7是分散位置逐步补全,而不是每次从上往下多画一条完整横带。图上的背景色只帮读者辨认遍次,不代表真实像素颜色。

七遍并不意味着每遍七分之一

本例第七遍含32个位置,占64格的一半;第一遍只有1格。用“完成三遍”直接写成“下载完成3/7”就混淆了遍数与数据量。

即便已数出某遍的像素个数,也不能直接等同压缩文件的字节比例。图只计算位置,尚未计算颜色通道、位深、过滤与压缩数据。也不要由这张位置图承诺节省多少流量或缩短多少等待时间。

它与放大和视频隔行有什么不同

普通缩放要给输出的更多位置计算或复制颜色;本题的最终位置和像素来自同一张PNG,区别在于哪些数据先到达。逐遍补齐不等于从已经完整的低分辨率图中恢复未记录细节。

视频隔行中的两场还可能对应不同采样时刻,运动位置会变化;本题七遍不是七个拍摄时刻。读图时应先把静态图编码、网页显示流程与视频采样分开,不能用一种解释概括所有条纹或模糊。

动手核对

  1. 先区分PNG原文件、网页缩略图与页面截图,避免比较的对象已变。
  2. 读取文件明确给出的交错属性;只有看到加载现象时保留判断未定。
  3. 用8乘8格图核对遍次与累计位置,不把遍数换成下载百分比。

常见问题

七遍就是七帧动画吗?

不是。这里的七遍是同一静态图各像素子集的传递次序,不是七个不同时间画面。

第一遍只有一个像素吗?

图中一个8乘8块是一个位置;更大的图像会重复该分配模式,所以第一遍通常包含多个分散像素。

小于8乘8的图也每遍都有像素吗?

不一定。尺寸不足时,有些遍次可能为空;本图统计限定完整的8乘8位置块。

依据与延伸阅读

继续阅读