How to set parameters in Python zlib module

Posted by fagricipni on Stack Overflow See other posts from Stack Overflow or by fagricipni
Published on 2011-01-06T05:48:37Z Indexed on 2011/01/06 5:53 UTC
Read the original article Hit count: 283

Filed under:
|
|
|

I want to write a Python program that makes PNG files. My big problem is with generating the CRC and the data in the IDAT chunk. Python 2.6.4 does have a zlib module, but there are extra settings needed. The PNG specification REQUIRES the IDAT data to be compressed with zlib's deflate method with a window size of 32768 bytes, but I can't find how to set those parameters in the Python zlib module.

As for the CRC for each chunk, the zlib module documentation indicates that it contains a CRC function. I believe that calling that CRC function as crc32(data,-1) will generate the CRC that I need, though if necessary I can translate the C code given in the PNG specification.

Note that I can generate the rest of the PNG file and the data that is to be compressed for the IDAT chunk, I just don't know how to properly compress the image data for the IDAT chunk after implementing the initial filtering step.

© Stack Overflow or respective owner

Related posts about python

Related posts about png