TEUS.me

 
 

온라인에서 이미지의 크기를 줄여주는 많은 사이트들이 있다.

TinyPNG가 가장 잘 알려져있는데, 최근에는 여기서 JPEG도 지원하도록 기능이 추가되었다.

비슷한 기능을 하는 PunyPNG도 있다. 여기는 JPEG, GIF까지도 지원해준다.[각주:1]

 

그런데, 이런 사이트를 통해 이미지를 압축하려면 내가 가진 이미지를 업로드해야 한다는 근본적인 문제가 있다.

 

왜 내 개인 이미지를 온라인에 올려줘야 되지?

그리고, 그 사이트들이 내 이미지를 다른 목적으로 사용하지 않는다는 보장이 있나?

 

사실, 이 사이트들이 사용하는 알고리즘은 대동소이 아니, 동일하다.

본 블로그에서도 몇번 소개했던 mozjpeg, ZopfliPNG, pngquant, Gifsicle웹 프론트엔드를 얹은 서비스들이다.

 

다시 말하면 이 프로그램들을 로컬에서 실행하면 동일한 서비스를 누릴 수 있으며, 업로드 제한 따윈 걱정할 필요도 없는 것이다.

 

 

그래서, 이미지를 로컬에서 처리하는 프로그램을 간단히 만들어봤다.

이 프로그램은 JPEG/PNG/GIF 파일들을 주어진 옵션에 따라 압축해준다.

 

- JPEG는 기본적으로 mozjpeg을 활용하여 최대한 작은 크기로 재압축

  압축 품질을 별도로 지정할 수 있음

  Exif 정보는 물론, 색상 프로파일 정보도 그대로 살려줌

  파일 생성 일자도 그대로 유지

- PNGZopfliPNG로 파일의 크기를 최대한 줄임

  pngquant를 선택하면 8bpp의 PNG 파일[각주:2]을 생성해줌

  각종 메타 정보를 그대로 유지

- GIFGifsicle로 파일 크기 최소화

  단일 프레임 GIF인 경우 8bpp PNG로 추가 저장

 

이 프로그램은 아래 링크에서 다운받을 수 있다.

 

iPress(avx2) v2.25.rar
0.85MB

64비트(avx2) / password: teus.me

 

iPress v2.25.rar
0.74MB

32비트 / password: teus.me

 

덧1. 많은 유사한 웹 페이지들은 별도로 유료 서비스인 Pro 버전을 지원(?)하는데, 눈가리고 아웅이라 생각함

덧2. 이 프로그램은 무조건 폴더 단위로 처리함, 당연히 대상 용량은 무제한

 


 

▲ 버전 히스토리

 

2021.7.31: v2.22

- mozJPEG을 v4.1.0으로 업데이트

- libpng를 1.6.38git으로 업데이트

- libimagequant를 2.15.1로 업데이트

- gifsicle을 1.93으로 업데이트

- Zopflipng 업데이트

- 메시지 박스 글자 크기를 120%로 확대

- 다양한 성능 개선 및 안정성 보강

 

2021.9.4: v2.25

- 프로그램 아이콘 및 Donate 버튼 아이콘 수정

- libimagequant를 2.15.1로 업데이트

- gifsicle을 1.93(Aug 24, 2021)으로 업데이트

 

 

  1. 사이트가 폐쇄됨 [본문으로]
  2. pngquant를 사용하며, 이는 TinyPNG에서 사용하는 알고리즘임 [본문으로]

공유하기

facebook twitter kakaoTalk kakaostory naver band

댓글

비밀글모드

  1. 킹왕짱
    안녕하세요!
    회사에서 사진을 찍을 일이 많은데, 저에게는 정말 최고의 프로그램입니다.
    블로그 구경왔다가 업데이트 되었길래 새로 받아갑니다.
    꾸준한 업데이트 감사드려요~!!
    2021.09.02 12:55
  2. 먼저 미안합니다. 어떤 의도가 있는 것이 아닌데...
    글을 많이 생략했네요. 님의 유틸들을 상당히 좋아하는 한 사람이라서 조금 앞섰습니다.
    RIOT 같은 알고리듬을 구현한 것인지 궁급해서 질문한 것입니다.
    다시 말씀드리지만, 일부러 무례하게 군 것이 아닙니다. 글로 쓰려니 답답하네요.
    2021.12.07 08:17 신고
    • 알겠습니다. 저도 좀 예민하게 군 거 같습니다.
      RIOT는 처음 보는 거라 답은 못 드리겠습니다.
      공개 SW지만 오프소스도 아니고, 어떤 라이브러리를 썼는지도 얘기가 없으니 알래야 알 방법이 없습니다.
      2021.12.07 14:40 신고
  3. 굿굿맨
    안녕하세요. 다수의 이미지로 용량이 버겁던 찰나에 좋은 프로그램 발견해서 잘 사용중입니다.
    다만 유저입장에서 사용하다보니 아쉬운점들이 있어 댓글남깁니다.

    1)Convert된 이미지를 저장하는 폴더 지정할때 타자로 없는 폴더명을 입력하면 폴더를 생성하는게 아니라 에러가 발생하는것이 아쉬웠습니다.
    없는 폴더라 하더라도 폴더를 생성해주면 좋을것같습니다

    2)1번과 맞물리는 문제인데, 폴더를 생성하지않아 원본폴더에 그대로 덮어씌우려하니 소스폴더 타겟폴더를 동일하게 지정해도 에러가 발생했습니다.
    저장폴더를 원본폴더와 동일하게 지정할시 덮어씌워 저장하는식으로 개선되면 좋을것같습니다

    3)하위폴더 탐색이 안되는것이 아쉬웠습니다. 제가 이미지를 년도\월\날짜 폴더별로 분류해두다보니 일일히 날짜별 폴더를 지정하는것이 번잡하더라구요.. 상위폴더 지정하면 하위폴더를 탐색하여 Convert 이미지 저장폴더에 하위폴더구조를 동일하게 저장시키는식으로 개선되면 좋을것같습니다.

    위의 1,2,3번의 기능이 안되다보니 Convert후 저장될 폴더를 생성하고, 년도\월\날짜 폴더를 지정하고, Convert된 이미지가 저장된 폴더를 열어서 다시 원본 폴더에 파일을 덮어씌우고 다시 다른 날짜폴더 지정하고.. 용량은 많이 감소시켰으나 시간이 너무 소모되고 손이 많이가더라구요.
    지금도 충분히 좋은 프로그램이고 잘 사용중이지만 위의 3가지가 개선된다면 더 좋은 프로그램이 될 것 같습니다.
    2021.12.17 13:19
  4. 굿굿맨
    그리고 PNG파일이 변환이 안되는 버그가 있습니다..용량이 커서그런건지 아니면 변환이 오래걸려서그런데 제가 못기다리는건지..
    한번 확인해주시면 감사하겠습니다
    2021.12.17 13:35
    • 1. 오류가 발생하는 PNG 파일을 보내주시면 확인해보겠습니다.
      2. 서브 폴더 또는 빈 폴더를 처리하는 문제 등은 고민 거리가 많아 기능 결정이 쉽지 않습니다.
      - 원본 폴더가 비거나 대상 파일이 없는 경우에 처리하는 것 자체가 옳지 않다고 보고요
      - 서브 폴더를 처리하는 경우는 원본과 대상이 서로 충돌되는 경우 (소스: c:\1\2 타겟: c:\1 또는 소스: c:\1 타겟 c:\1\2 )라든가, 이미 결과 폴더에 다른 폴더나 파일이 있는 경우에 처리하는 게 옳은가 또는 무조건 덮어쓰면 되는가 등을 고민해야 됩니다
      3. 이 기능들을 모두 선택해서 옵션 처리하면 되겠지만, 이 프로그램은 특성상 한 번 압축하면 그 다음은 쓸 일이 없는(아니, 쓰면 안 되는) 프로그램입니다. 이걸 그렇게나 하는 게 큰 의미가 있을까 모르겠습니다.
      2021.12.18 09:25 신고
  5. 굿굿맨
    PNG파일은 변환이 안되는게 아니라 용량이 크면 시간이 기하급수적으로 증가하는것같습니다.
    용량 작은파일은 2메가파일을 변환하는데 75초가걸리는데 제 PNG 이미지파일들은 평균 25메가바이트정도라 시간이 다수걸리는것같습니다
    2021.12.20 20:51
    • zopflipng는 원래 압축이 "엄청나게" 오래 걸립니다.
      2021.12.20 21:02 신고
  6. 발해
    command line 에서 소스, 타겟 경로 지정해서
    변환 할 수 있는 방법 있을까요?
    2021.12.28 20:40
  7. 짱짱
    프로그램 잘 사용하고있습니다.
    감사 말씀 드립니다.
    2021.12.29 06:05
  8. 트롯
    유용한 프로그램 감사합니다. 다만, 사용해보기 위해 실행시 알약에 "행위 기반 차단 알림" 이 뜨게 됩니다.
    예외 처리하고 사용하기는 하고 있으나, 널리 이용되길 바라는 마음에서 확인 요청합니다.
    2022.05.17 14:04