I have a script for converting game assets to multiple resolutions, via imagick, and when I run the same imagick commands on Mac and Windows (with the same version of imagick - ImageMagick 6.8.7-2), the produced PNGs are different (which is a huge problem with versioning, etc.).

Can you please suggest some solution? Like, processing graphics into some uncompressed rgba8888 format, and then turning that into PNG with some software that behaves the same across platform? Or by some stricter setting of imagick (force same seed, etc?).

I am already using -strip to get rid of metadata (including creation time), but now the difference is in a big part of file.

        Mac version    vs.    Windows version

  • 1
    The two files differ by one bit in a single pixel - pixel 150,46 is #18323F in one file and #183240 in the other. This has the effect that the compressed data differs from that point on in the file. Both contain a text chunk that claims they were made by Adobe ImageReady. Commented Jul 8, 2015 at 18:32
  • Wow, thanks Glenn - so it seems that ImageMagick's resize is not deterministic between platforms, as the starting image was exactly same binary file. Commented Aug 6, 2015 at 10:41
  • Would you provide the starting image and the exact command you used to create the output images? And tell us which version of libpng you used on both platforms (type "convert -list format | grep PNG" to find out). Were both installations of ImageMagick the same quantum depth (Q8 or Q16)? Commented Aug 6, 2015 at 13:19


You must log in to answer this question.

Browse other questions tagged .