zlib.inflate 与 zlib.deflate
发布于 8 年前 作者 l3ve 6534 次预览 最后一次回复是 8 年前 来自 问答
最近在研究 png,其中有块数据需要用到 zlib.inflate 来解压数据块,一切都很正常,但昨天突然发现一个 buffer 进行 inflate 之后 deflate 得到的 居然不是之前的 buffer(好像丢失了数据),这是咋回事?求解答
buffer1:
buffer2:
多次测试情况如下:
- buffer1 解压后和 buffer2 解压缩后的数据是相等的
- buffer1 解压后再压缩得到 buffer2
- buffer2 解压后再压缩得到 buffer2
- 压缩的options 当中 level 会改变压缩后的数据,当是怎么设置也得不到 buffer1
4 回复
inflate 和 deflate 反过来试下, deflate 在前, inflate 在后
@ziliwesley 我的数据源本来就是从PNG里取到的压缩数据,感觉和压缩参数有关系。
说明原本的png文件不是用默认设置压缩的,可以用这个deflate压缩后的png与原图对比,应该是相同的
测试后跟压缩参数没关系,压缩参数会写到压缩后的数据的开头