이미지 일괄 변환 — 크기·압축·형식
여러 이미지를 한 번에 크기 조정·압축·형식 변환(PNG·JPG·WebP·AVIF·움직이는 GIF) — MozJPEG·팔레트 PNG, 목표 KB 맞추기, zip 다운로드. 무료, 업로드 없음.
이미지를 드롭하거나 클릭해 선택
🔒 브라우저에서 처리되며 업로드되지 않습니다. 여러 이미지는 .zip으로 다운로드됩니다.
이미지 크기·압축·형식을 한 번에
이미지를 원하는 만큼 넣고 한 번에 처리하세요 — 크기 조정(상자 안에 맞추기·백분율·정확한 크기),
PNG·JPG·WebP·AVIF·GIF로 다시 인코딩,
그리고 품질(20~95)을 직접 정하거나 목표 파일 크기로 압축 — KB 한도를 입력하면 이미지마다
그 이하로 들어가는 최고 품질을 이진 탐색으로 찾습니다. 한 장은 그대로, 여러 장은 하나의 .zip으로
내려받습니다. 모든 처리가 브라우저 안에서 이뤄져 업로드가 없고, 파일 하나당 40MB까지 받습니다.
캔버스 인코더만 쓰지 않습니다. 브라우저 기본 인코더는 그림 내용과 상관없이 PNG를 8비트 RGBA로 쓰고, AVIF는 아예 쓰지 못하며, JPEG에는 품질 값 하나만 줍니다. 그래서 인코더를 세 개 더 붙였습니다 — MozJPEG(250KB, 프로그레시브 렌더링과 4:4:4 / 4:2:0 색차 선택), libavif 기반 AVIF(3.5MB, 압축 노력 0~10 슬라이더와 같은 색차 선택), 그리고 직접 만든 팔레트 PNG 저장기 — 미디언 컷으로 2~256색까지 줄이고 Floyd–Steinberg 디더링을 선택할 수 있으며, 픽셀당 1·2·4·8비트의 진짜 인덱스 PNG로 씁니다. wasm 인코더 둘은 그 형식을 고를 때 한 번만 내려받습니다. WebP는 브라우저 인코더를 손실 또는 무손실로 쓰는데, 나온 파일의 프레임 청크를 되읽어 확인하고 브라우저가 결국 손실로 써 버렸으면 그대로 알려 줍니다.
리샘플링 방식을 직접 고릅니다. 캔버스에 맡기는 대신 Lanczos3· Mitchell·Catmull-Rom·Triangle(쌍선형)· 픽셀 아트(최근접) 중에서 고르고, 선형 RGB로 평균내기와 알파 미리 곱하기를 켤 수 있습니다 — 앞의 것은 많이 줄인 사진이 어두워지는 것을, 뒤의 것은 투명한 가장자리에 검은 테가 생기는 것을 막습니다. 정확한 크기는 픽셀뿐 아니라 인치·센티미터·밀리미터로도 입력할 수 있고, DPI(1~2400)를 정하면 실제 픽셀 크기를 입력칸 아래에 바로 보여 줍니다. 원본보다 작으면 확대하지 않기를 켜면 억지로 키우지 않고 원본 크기 그대로 둡니다. 백분율은 5~400% 슬라이더와 25·33·50·200·300·400% 버튼을 함께 제공합니다.
내려받기 전에 눈으로 확인합니다. 실시간 미리보기가 마지막 조작 350ms 뒤에 다시 렌더링하는데, 실제 다운로드와 완전히 같은 경로를 지나므로 보이는 것이 곧 저장되는 것입니다. 전/후 슬라이더와 함께 결과 용량, 늘거나 줄어든 비율, 출력 픽셀 크기를 표시하고, 여러 장일 때는 지금 어떤 파일을 보여 주는 중인지와 나머지도 같은 설정으로 처리된다는 것을 알려 줍니다. 형식 비교는 첫 이미지를 현재 설정 그대로 PNG·JPG·WebP·AVIF로 인코딩하고(원본이 GIF일 때는 GIF까지) 용량을 나란히 보여 주고, 가장 작은 것을 표시하며 한 번의 클릭으로 그 형식을 채택합니다. 여러 장을 처리하다 읽지 못하는 파일이 나와도 멈추지 않고 건너뛴 파일 이름을 알려 줍니다. JPG에는 알파 채널이 없으므로 투명한 부분은 흰색으로 합쳐서 저장합니다.
움직이는 그림과 벡터도 받습니다. 움직이는 GIF는 그대로 움직입니다 — 모든 프레임을 이 도구가 직접 디코딩하고(브라우저는 첫 프레임만 돌려줍니다), 정지 사진과 같은 설정으로 크기를 조정한 뒤, 프레임마다의 재생 시간까지 그대로 다시 씁니다. 출력 형식을 GIF로 고르거나 GIF에 원본 유지를 두면 GIF 그대로 남습니다. 다른 그림을 GIF로 쓰면 한 프레임짜리가 되며, 모든 프레임은 GIF가 담을 수 있는 256색으로 줄어듭니다. SVG는 파일 안에 적힌 크기(width·height, 없으면 viewBox, 둘 다 없으면 512px)로 래스터화하므로, 벡터 파일을 여기서 정한 크기의 PNG·JPG·WebP·AVIF로 바꿀 수 있습니다.
자주 묻는 질문
이미지를 200KB 이하 같은 특정 크기로 압축할 수 있나요?
네. 손실 형식(JPG·WebP·AVIF)을 고르고 "압축 방식: 목표 파일 크기"를 선택한 뒤 KB 한도를 입력하세요. 품질 20~95 사이의 정수를 이진 탐색해 그 크기 이하로 들어가는 최고 품질을 이미지마다 찾는데, 후보마다 실제로 인코딩해 용량을 재고 나서 채택하므로 "한도 안에 들어갔다"는 결과는 정말 들어간 것입니다. 품질 20으로도 맞출 수 없으면 만들 수 있는 가장 작은 버전으로 저장하고 어떤 파일이 목표를 못 맞췄는지 이름을 알려 줍니다. 무손실 WebP는 조절할 품질이 없어 목표 크기가 적용되지 않습니다.
크기 조정·압축·형식 변환을 동시에 할 수 있나요?
네. 크기(선택), 출력 형식, 품질(또는 목표 크기)을 정하면 모든 이미지가 한 번에 처리됩니다 — 세 도구를 따로 돌릴 필요가 없습니다.
여러 장은 어떻게 다운로드되나요?
한 장은 바로 내려받고, 여러 장은 하나의 .zip으로 묶여 한 번에 받습니다.
이미지가 업로드되나요?
아니요. 디코딩·크기 조정·인코딩이 전부 내 기기에서 실행됩니다. 무손실 PNG와 WebP는 브라우저 캔버스 인코더, JPG는 캔버스 또는 MozJPEG, AVIF는 libavif, 팔레트 PNG는 이 도구가 직접 만든 양자화기와 PNG 저장기를, GIF는 이 도구의 프레임 디코더와 gifenc 인코더를 씁니다. Safari와 아이폰·아이패드의 브라우저에는 WebP 인코더가 없어, 그곳에서는 WebP를 제공하지 않고 원본 형식 유지로 둔 WebP는 PNG로 저장합니다. wasm 인코더 두 개는 해당 형식을 처음 고를 때 이 사이트에서 내려받지만, 사진 자체는 여전히 브라우저를 벗어나지 않습니다.
AVIF로도 저장되나요?
네. AVIF는 출력 형식 다섯 가지 중 하나이며, WebAssembly로 컴파일한 libavif로 인코딩합니다. 압축 노력을 0(가장 빠르고 큼)에서 10(가장 느리고 작음)까지 정하고, 색차 해상도를 자동·4:4:4·4:2:0 중에서 고를 수 있습니다. 브라우저 캔버스는 AVIF를 쓰지 못하기 때문에 3.5MB짜리 인코더를 쓰는데, AVIF를 처음 고르는 순간에만 내려받고 그 전에는 받지 않습니다.
PNG가 원본보다 커졌습니다. 왜 그런가요?
브라우저 캔버스 인코더가 그림 내용과 상관없이 모든 PNG를 8비트 RGBA로 쓰기 때문입니다. 적은 색으로 저장돼 있던 스크린샷이나 로고가 훨씬 큰 색 공간으로 다시 저장되는 셈입니다. 'PNG 방식'을 '팔레트 축소'로 바꾸세요 — 미디언 컷으로 2~256색까지 줄이고(디더링 선택 가능), 픽셀당 1·2·4·8비트의 진짜 인덱스 PNG로 쓰며 투명도는 tRNS 청크에 담습니다. 스크린샷·로고·단색 그림에 쓰는 방식이고, 사진은 '무손실'로 두세요.
리샘플링은 어떤 걸 골라야 하나요?
'자동'은 캔버스에 맡기는 것으로, 크기 변화가 작을 때는 충분합니다. 사진을 줄일 때 가장 선명한 건 Lanczos3이고, Mitchell은 더 부드러워 링잉이 덜 보이며, Catmull-Rom은 그 중간입니다. Triangle은 평범한 쌍선형이고, 픽셀 아트는 최근접 이웃이라 도트 그림을 확대할 때 각진 가장자리를 살려 줍니다. 다섯 가지 중 무엇을 고르든 '선형 RGB로 평균내기'(많이 줄인 이미지가 실제 빛보다 어두워지는 것을 막음)와 '알파 미리 곱하기'(투명 픽셀의 색이 이웃으로 번져 검은 테가 생기는 것을 막음)를 함께 켤 수 있습니다.
인쇄용으로 인치나 센티미터로 크기를 지정할 수 있나요?
네. '정확한 크기'에서 너비·높이를 픽셀·인치·센티미터·밀리미터로 입력할 수 있고 DPI는 1~2400까지 정합니다. 단위를 바꾸면 숫자를 그대로 두는 게 아니라 같은 물리적 크기로 다시 환산해 주고, 그 결과가 실제 몇 픽셀인지 입력칸 아래에 표시합니다. 한 변이 20,000px를 넘으면 브라우저 캔버스가 감당하지 못하므로 그 자리에서 거부합니다.
어떤 형식이 가장 작은지 어떻게 알 수 있나요?
'형식 비교'를 누르세요. 지금 설정한 크기·품질 그대로 첫 이미지를 PNG·JPG·WebP·AVIF로 인코딩해 실제 용량을 나열하고, 가장 작은 것에 표시를 한 다음 그 형식으로 바꾸는 버튼을 줍니다. 원본이 GIF일 때만 GIF 행이 함께 나오는데, 그 때가 아니면 인코딩 시간을 쓸 이유가 없기 때문입니다. 출력 형식 외의 설정이 바뀌면 표는 스스로 사라지므로, 더 이상 맞지 않는 숫자를 보여 주는 일은 없습니다.
파일 크기나 장수 제한이 있나요?
장수 제한은 없습니다. 한 번에 4장씩 처리해 하나의 zip으로 묶어 줍니다. 다만 한 파일이 40MB를 넘으면 거부하고 그 파일의 크기와 한도를 함께 알려 줍니다 — 그보다 큰 사진은 수백 MB짜리 캔버스로 펼쳐져 아무것도 뜨지 않은 채 탭이 죽기 때문입니다.
움직이는 GIF는 움직임이 유지되나요?
출력을 GIF로 두면 유지됩니다. 프레임을 이 도구가 직접 디코딩하기 때문에(브라우저는 첫 프레임만 돌려줍니다) 모든 프레임과 각 프레임의 재생 시간이 그대로 살아남고, 크기 조정도 프레임마다 적용됩니다. GIF에 '원본 유지'를 두면 GIF 그대로 나옵니다. 움직이는 PNG(APNG)는 출력을 PNG로 두거나 PNG에 '원본 유지'를 두면 모든 프레임과 각 프레임의 재생 시간, 반복 횟수가 그대로 유지되며, 팔레트 축소는 적용되지 않습니다. 다만 움직이는 GIF를 PNG·JPG·WebP·AVIF로 바꾸거나 APNG를 PNG가 아닌 형식으로 바꾸면 정지 한 장이 되고, 움직이는 WebP는 어떤 형식으로 내보내도 정지 한 장이 됩니다. SVG는 디코딩해 래스터화하고, PSD와 카메라 RAW는 지원하지 않습니다.