我可以安全地将空字节附加到PNG图像

时间:2015-01-23 23:14:16

标签: image png image-size

我想将空字节附加到PNG文件以匹配先前的大小。我已经成功地将10 MB添加到一个小图像中,没有查看图像的问题。我想知道基于PNG格式的定义是否安全,或者我是否因为软件中的错误纠正而感到幸运。

更新:我删除了为什么要这样做。

1 个答案:

答案 0 :(得分:3)

附加NULL是否安全取决于解码应用程序和库。如果您想绝对安全,请插入包含NULL的私有块。请注意,此方法将始终向文件添加至少12个字节(4字节长度,4字节块名称,零个或多个NULL字节和4字节CRC),格式为

nnnnzpAD000000CRCN

,其中

nnnn = number of NULLs
zpAD = chunk name
0000000...  the NULLs
CRCN = 4-byte CRC calculated over the chunk name and the NULLs

将这个新的“zpAD”块(或任何你决定称之为的块)放在现有的IEND块之前。