이미지를 서버에 올리지 않는 편집기를 만들었습니다 — EditImg.online

이미지 하나 줄이려고 검색하면 나오는 사이트는 거의 전부 같은 구조입니다. 파일 업로드 → 서버에서 처리 → 결과 다운로드. 휴가 사진이든 신분증 스캔이든 계약서 캡처든, 일단 남의 서버에 올려야 합니다. 그 파일이 언제 지워지는지, 지워지기는 하는지 확인할 방법은 없습니다.

그래서 업로드 단계가 없는 도구를 만들었습니다.

https://editimg.online

EditImg.online 첫 화면


업로드가 없다는 게 무슨 뜻인가

크기 조절, 자르기, 형식 변환이 전부 브라우저 안에서 실행됩니다. 브라우저에 내장된 그래픽 엔진(Canvas API)으로 사용자 기기에서 처리하기 때문에 이미지가 네트워크를 타지 않습니다.

  • 서버로 전송되지 않습니다
  • 어디에도 저장되지 않습니다 — 그래서 "며칠 뒤 삭제" 같은 약속이 필요 없습니다
  • 만든 사람도 볼 수 없습니다
  • 페이지를 한 번 연 뒤에는 인터넷이 끊겨도 편집이 계속 동작합니다

말로만 하는 약속이 아니라 구조적으로 그렇습니다. 이 사이트는 정적 파일만으로 배포되어 있고 서버리스 함수가 0개입니다. 이미지를 받아줄 백엔드가 애초에 존재하지 않습니다.

덤으로, 캔버스로 내보내는 과정에서 EXIF가 항상 제거됩니다. 촬영 위치(GPS), 카메라 시리얼 번호, 촬영 시각이 결과 파일에 남지 않습니다. 사진 방향 값은 내보내기 전에 읽어서 적용하니 사진이 옆으로 눕지도 않습니다.


기능

1. 크기 조절

픽셀·퍼센트·최대 변 기준으로 입력해도 되고, PPT에서 도형 크기 바꾸듯 8방향 핸들을 그냥 끌어도 됩니다. Shift로 비율 고정 해제, 더블클릭으로 원본 크기 복귀. 400 / 800 / 1080 / 1920 / 3840px 프리셋과 사진용·픽셀아트용 리샘플링 선택이 있습니다.

축소는 한 번에 줄이지 않고 절반씩 단계적으로 수행합니다. 큰 사진을 작게 줄일 때 경계가 자글자글해지는 현상을 줄이려고 그렇게 만들었습니다.

샘플 기준 1.6MB → 42KB (97% 절감). 설정을 바꾸는 동안 예상 용량이 실시간으로 갱신됩니다.

2. 자르기

자유 / 1:1 / 4:3 / 3:2 / 16:9 / 9:16 비율 프리셋, 3분할 안내선, 그리고 폴더에 담긴 모든 파일을 중앙 기준으로 한 번에 자르기.

3. 형식 변환

JPEG · PNG · WebP · AVIF를 품질 슬라이더와 함께 변환합니다. 파일명 규칙을 {name}_{width}x{height} 같은 템플릿으로 지정할 수 있고, 투명 배경을 흰색으로 채우는 옵션도 있습니다.

같은 사진을 WebP로 내보내면 **1.6MB → 18KB (99% 절감)**입니다.

AVIF는 브라우저가 인코딩을 지원할 때만 버튼이 활성화됩니다(위 화면에서 AVIF가 흐릿한 이유입니다). 시작할 때 실제 지원 여부를 검사하기 때문에, 깨진 파일이 조용히 만들어지는 일이 없습니다.

4. 일괄 처리

  • 폴더째 끌어다 놓기, Ctrl+V로 클립보드 붙여넣기, 파일 선택 모두 지원
  • 선택한 파일 전체에 같은 설정 적용
  • 처리 결과를 ZIP 하나로 다운로드

서버 제한이 없어서 한 번에 처리할 수 있는 장수는 기기 메모리가 결정합니다. 최신 노트북이라면 수십~수백 장도 무리 없고, 휴대폰에서는 조금씩 나눠 하는 편이 안전합니다.

회전과 좌우·상하 반전도 툴바에 있습니다.


7개 언어

한국어 · English · 日本語 · 简体中文 · Español · Français · हिन्दी

브라우저 언어를 감지해 자동으로 맞춰주고, 직접 고른 언어는 기억합니다. URL도 언어별로 분리되어 있어(/ko/, /ja/ …) 링크를 보내면 상대방도 같은 언어로 봅니다.


가이드도 씁니다

도구만 있으면 "그래서 인스타는 몇 픽셀인데?"라는 질문이 남습니다. 그래서 실제로 필요한 내용만 정리한 가이드를 붙였습니다.

  • SNS 이미지 사이즈 정리 — 인스타그램·유튜브·X·링크드인·페이스북·핀터레스트 규격과, 사이즈표를 다시 찾지 않게 해주는 세 가지 원칙
  • 이미지 용량 줄이기 — 크기 → 형식 → 품질. 2MB 첨부 제한, 지메일 25MB를 통과하는 순서
  • WebP vs AVIF vs JPEG vs PNG — 무엇을 언제 쓰나, 10초 안에 끝나는 선택 순서
  • 화질 손상 없이 크기 줄이기 — 실제로 화질을 깎는 범인, 확대가 왜 불가능한지, DPI의 정체

무료입니다

회원가입 없음. 하루 처리 제한 없음. 워터마크 없음. 결제 유도 없음. 광고로 운영합니다.


기술적으로 궁금한 분들께

  • Astro 5(정적) + React 19 아일랜드 + TypeScript, Netlify 배포, Cloudflare DNS
  • wasm(libvips·squoosh)을 쓰지 않았습니다. 멀티스레드 wasm은 SharedArrayBuffer가 필요하고, 그러려면 COOP/COEP 헤더를 걸어야 하는데 그 순간 광고 iframe이 전부 차단됩니다. 광고로 운영하는 모델과 양립하지 않아 Canvas API를 택했습니다
  • Web Worker 없이 메인 스레드에서 처리하되, 파일 하나마다 await로 끊어 UI가 멈추지 않게 했습니다
  • 페이지는 언어별 정적 HTML로 미리 생성되고 서버리스 함수가 없어서, 콜드 스타트라는 개념 자체가 없습니다

써보고 알려주세요

혼자 만들고 혼자 고치고 있습니다. 버그 신고와 기능 요청 모두 환영합니다. 특히 번역이 이상한 부분은 알려주시면 바로 고칩니다.


짧은 버전 (커뮤니티·SNS용)

3줄

이미지 크기 조절·자르기·형식 변환을 브라우저 안에서만 처리하는 도구를 만들었습니다. 파일이 서버로 올라가지 않아서 업로드도, 저장도, 삭제 요청도 없습니다. 폴더째 끌어다 놓고 한 번 설정해서 ZIP으로 받는 일괄 처리, JPEG·PNG·WebP·AVIF 변환, 7개 언어를 지원합니다. 무료·회원가입 없음·워터마크 없음. https://editimg.online

한 줄

업로드 없이 브라우저에서 이미지 리사이즈·자르기·형식 변환 — https://editimg.online (무료, 7개 언어, 파일이 기기를 벗어나지 않음)