本文介绍了PNG:使用多个IDAT-Chunk有什么好处?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想知道在PNG映像中使用多个IDAT-Chunk有什么好处。

PNG文档称

我无法想象这是因为区块中的数据-挡路的最大大小(2^32字节)。

PNG

回想一下,所有推荐答案块(包括IDAT块)都有一个带有块长度的前缀。将所有压缩流放在单个巨大的IDAT块中会造成以下两个不便:

  • 在编码器端:压缩器在完成压缩之前不知道压缩数据的总大小。然后,在写入区块前缀之前,它需要在内存中缓冲完整的压缩数据。

  • 在解码器端:这取决于块解码是如何实现的;如果它在内存中缓冲每个块(分配由块长度前缀提供的空间),并且在填充它并检查CRC之后,它将内容传递到解压缩器,那么,同样,拥有单个巨大的IDAT块将是内存占用。

考虑到这一点,我认为应该推荐使用较小的IDAT块(比如,16KB或64KB)。开销(每个区块12个字节,如果len=64KB,则小于1/5000)可以忽略不计。

这篇关于PNG:使用多个IDAT-Chunk有什么好处?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

05-31 16:50