이전 포스트에서 얘기했듯, ZopfliPNG는 PNG 파일의 크기를 더욱 줄여주는 훌륭한 기술이다.
참고로, pngquant와 ZopfliPNG를 함께 사용하면 파일의 크기를 더욱 줄여줄 수 있다.
ZopfliPNG는 이전에 나왔던 optipng와 유사하게 무손실 압축만 다시해서 파일의 크기를 줄이는 방식이다.
이 기술들이 대체 얼마나 이미지를 더 줄여주는지 확인해봤다.
우선, 임의의 이미지 두 개를 선정했다.
하나는 891,817바이트 짜리, 하나는 9,743,137바이트 짜리.
선정 기준은 별 거 없이 대략 1MB 이하의 평범한 파일 하나랑 10MB에 가까운 거대한 파일 하나.
같은 이미지를 optipng와 ZopfliPNG를 기본 모드 및 추가 압축 모드로 돌리면서 압축률과 시간을 측정했다.
작은 이미지를 돌린 결과는 아래와 같다.
숫자만 언뜻 봐도 optipng는 zopflipng의 적수가 되지 못한다.
파일 크기를 그래프로 보면 아래와 같다.
눈에 띄는 사실 두 가지는…
1. zopflipng가 optipng에 비해 우월함
2. optipng든 ZopfliPNG든 "조금 더 압축" 옵션을 지정하면 쪼금 더 압축이 되기는 함
재압축에 소요되는 시간은 아래와 같다.
여기서 볼 수 있는 사실들...
1. optipng는 "조금 더 압축"에 걸리는 시간이 심각하게 김 (7배, 18배… ㄷㄷㄷ)
2. (엄청난 압축률에도 불구하고) zopflipng는 "조금 더 압축"시 시간이 2배 이하로 걸림
10MB짜리 큰 이미지를 돌린 결과는 아래와 같다.
작은 이미지 때와 비교해서 특별히 다른 점이 눈에 띄는 건 없다.
여전히 zopflipng가 우월하고, "조금 더 압축" 할 수는 있다.
소요 시간 그래프 역시 작은 이미지 때와 비슷한 성향을 띈다.
한줄 결론: optipng 버리고, zopflipng 기본으로 쓰셈