.png 文件的前八个字节是否有声明的含义?

Is there a declared meaning of the first eight bytes of .png files?

我正在阅读代码并看到其中的以下评论部分:

            // We need to determine if the image is a PNG or a JPEG
            // PNGs are easier to detect because they have a unique signature (http://www.w3.org/TR/PNG-Structure.html)
            // The first eight bytes of a PNG file always contain the following (decimal) values:
            // 137 80 78 71 13 10 26 10

如果我查看 ASCII 代码,我会得到以下文本:

ëPNG♪◙→◙

从哪个PGN就很清楚了。其他部分有解释吗?

来自 PNG 规范 (https://www.w3.org/TR/PNG-Rationale.html#R.PNG-file-signature)

在ASCII中是:\211 P N G \r \n \032 \n

前两个是为了确保它被识别为 PNG(一个非 ASCII 字符和 P),之后的换行符是为了防止错误的文件传输,倒数第二个 (CTRL-Z) 字符防止 DOS显示文件内容和最后一个换行符与第一个换行符序列的原因相同