Image optimizer written on Python
It uses programs and image type conversion to achieve maximum compression.
- imagemagick (identify, convert)
- cwebp, gif2webp
- Try to convert to progressive format:
- jpeg (-> png) -> webp/heic/avif (lossy) with same quality
- jpeg -> png -> webp/heic/avif (lossless)
- png -> webp/heif/avif (lossless)
- gif -> png -> webp/heic/avif (lossless, 1 frame)
- tiff -> png -> webp/heic/avif (lossless, 1 frame)
- gif -> webp (lossless, multi-frame)
- Optimize result image:
- jpeg -> leanify / jpegoptim
- png -> pngquant / optipng
Note: pngquant used only if image has leass than 16384 colours.