I have been working on a pixel art story, and mostly for the fun of it, I decided to try to reduce the size of my images, just to compare how well different approaches did at it.
I tried using plain magick -strip on the PNGs, zopflipng, lossless JPEG XL, and also loossless WebP. Now, maybe I did something wrong, but WebP did so terrible compared to the others that I decided to not even include it in the results.
The results I got were as follows. (Note that I named the zopfli PNGs as .zpng mostly just so I could separate them using a glob.)
327 cover.png
1.9K page-I.png
2.0K page-II.png
2.6K page-III.png
1.8K page-IV.png
1.9K prologue.png
322 cover.zpng
1.7K page-I.zpng
1.8K page-II.zpng
2.4K page-III.zpng
1.6K page-IV.zpng
1.7K prologue.zpng
325 cover.jxl
1.4K page-I.jxl
1.5K page-II.jxl
2.2K page-III.jxl
1.2K page-IV.jxl
1.4K prologue.jxl
Here are the commands I used:
for n in *.png
do cjxl --distance=0 --effort=9 --brotli_effort=11 "$n" "${n%%.png}.jxl"
done
for n in *.png
do zopflipng "$n" "${n%%.png}.zpng"
done
If anyone finds this at all interesting, I can provide more exact file sizes.