이미지 크기를 최대한 줄여주는 iPress 3.30 업데이트
소개 및 다운로드
온라인에서 이미지의 크기를 줄여주는 많은 사이트들이 있다.
TinyPNG가 가장 잘 알려져있는데, 최근에는 여기서 JPEG도 지원하도록 기능이 추가되었다.
그런데, 이런 사이트를 통해 이미지를 압축하려면 내가 가진 이미지를 업로드해야 한다는 근본적인 문제가 있다.
왜 내 개인 이미지를 온라인에 올려줘야 되지?
그리고, 그 사이트들이 내 이미지를 다른 목적으로 사용하지 않는다는 보장이 있나?
사실, 이 사이트들이 사용하는 알고리즘은 대동소이 아니, 동일하다.
본 블로그에서도 소개했던 mozjpeg, ZopfliPNG, pngquant, Gifsicle에 웹 프론트엔드를 얹은 서비스들.
다시 말해 이 프로그램들을 로컬에서 실행하면 동일한 서비스를 업로드 제한 따윈 걱정 없이 누릴 수 있는 것이다.

그래서, 이미지를 로컬에서 처리하는 프로그램을 간단히 만들어봤다.
이 프로그램은 BMP/JPEG/PNG/GIF 파일들을 주어진 옵션에 따라 압축해준다.
- JPEG는 기본적으로 mozjpeg을 활용하여 최대한 작은 크기로 재압축
압축 품질을 별도로 지정할 수 있음
Exif 정보는 물론, 색상 프로파일 정보도 그대로 살려줌
파일 생성 일자도 그대로 유지 - PNG는 ZopfliPNG로 파일의 크기를 최대한 줄임
pngquant를 선택하면 8bpp의 PNG 파일을 생성해줌
각종 메타 정보를 그대로 유지 - GIF는 Gifsicle로 파일 크기 최소화
단일 프레임 GIF인 경우 8bpp PNG로 추가 저장 - BMP는 기본적으로 PNG로 변환하며, PNG 변환의 모든 선택을 동일하게 적용 가능
옵션에서 선택하면 JPEG로도 변환할 수 있으나, 변환 후 크기가 더 작으면 그냥 삭제해버림 - 변환시 멀티 코어를 최대한 활용하나, 외부 프로그램을 활용한 변환 시에는 싱글 코어만 활용
이 프로그램은 아래 링크에서 다운받을 수 있다.
히스토리
- 2025.3.3꞉ v3.20
- 처리 대상 이미지 포맷에 TIFF 추가
- 아이콘 변경
- mozJPEG을 v5.0.0.dev(Jan 4, 2023)로 업데이트
- libpng를 1.6.47(Feb 18, 2025)로, zlib-ng를 2.2.4(Feb 11, 2025)으로 업데이트
- libimagequant를 4.3.4로 업데이트(Jan 24, 2025)
- 2025.3.8꞉ v3.21
- TIFF 헤더 정보 읽을 때 float/double 형식 데이터를 제대로 읽도록 수정
- 2025.12.4꞉ v3.30
- IEEE 754 half(float16) 읽기 함수 최적화
- GIF –> Animated WebP 변환 기능 추가
- 병렬 처리 개수 축소
- 파일명에
%가 들어있는 경우에도 제대로 동작하도록 수정 - 라이브러리 업데이트
- mozJPEG을 v5.0.0.dev(Jun 24, 2025)로 업데이트
- libpng를 1.8.0.git(Nov 25, 2025)으로 업데이트
- zlib-ng를 2.3.2(dev 4, 2025)로 업데이트
- libimagequant를 4.5.0으로 업데이트 (2025.7.30)
- 내부 라이브러리 전면 개선
- RAII 등 최신 C++ 스타일 적용
- 가급적 포인터 배제
