# 휴대폰이 저장한 사진, 그리고 아무것도 열지 못하는 형식
아이폰은 사진을 HEIC로 저장합니다. JPEG보다 작고 좋은데, 아직도 많은 프로그램이 열기를 거부합니다. 이 형식이 실제로 무엇인지, 변환이 사진에서 무엇을 앗아 가는지, 그리고 거의 모든 변환기가 왜 먼저 업로드부터 하라고 하는지 정리했습니다.
[HEIC를 JPG로 열기](https://abox.tools/ko/heic-jpg-변환/): 아이폰이 만드는 사진을, 아무 데서나 열리는 형식으로.
마지막 업데이트 2026년 8월 26일
## 짧은 답
[HEIC를 JPG로](https://abox.tools/ko/heic-jpg-변환/)를 열고 사진을 넣은 다음 “변환”을 누르세요. 화질 슬라이더는 그대로 두시고, 특별한 이유가 없다면 “날짜와 카메라, 설정 유지”도 켠 채로 두세요. JPEG가 돌아오고, 하나면 내려받기 버튼이, 여러 개면 zip이 나옵니다.
그동안 아무것도 업로드되지 않습니다. 이 작업에서는 흔치 않은 일이고, 그 이유가 이 페이지의 흥미로운 절반입니다.

변환의 전부가 이 셋입니다. 멈춰 볼 만한 것은 메타데이터 스위치이고, 그 이유는 아래 절에 있습니다.
## HEIC가 실제로 무엇인지
HEIC는 JPEG 같은 의미의 이미지 형식이 아닙니다. MP4를 이루는 것과 같은 박스 구조로 된 컨테이너이고, 그 안에 **HEVC** 영상의 정지 프레임 한 장이 들어 있습니다. H.265라고도 하는 HEVC는 옛날 캠코더가 쓰던 코덱을 대체한 코덱이고, 아주 좋습니다. HEIC로 저장된 아이폰 사진은 같은 화질의 JPEG의 대략 절반 크기입니다.
애플은 2017년 iOS 11에서 이것으로 바꾸고 기본값으로 정했습니다. 그 말은, 누군가 설정에 들어가 “높은 호환성”을 고르지 않은 한, 그 사람의 휴대폰이 10년 가까이 찍은 모든 사진이 다음과 같은 형식으로 되어 있다는 뜻입니다.
- 윈도우는 스토어에서 확장을 받지 않으면 미리보기를 못 하고,
- 대부분의 웹 업로드 양식은 아예 거부하며,
- 적지 않은 오래된 데스크톱 소프트웨어는 들어 본 적도 없고,
- Safari를 뺀 어떤 웹 브라우저도 보여 주지 않습니다.
사진에는 아무 문제도 없습니다. JPEG였을 때보다 나은 파일입니다. 그저 세상 대부분이 배운 적 없는 언어로 쓰여 있을 뿐입니다.
## 왜 Safari만 여는가
지금까지 써 본 모든 변환기가 왜 그랬는지를 설명해 주는 대목이라, 한 단락 쓸 값어치가 있습니다.
HEVC를 디코딩하려면 HEVC 디코더가 필요하고, HEVC에는 특허가 걸려 있습니다. 라이선스는 한 곳이 아닌 특허 풀들이 관리하고, 디코더를 싣는다는 것은 누군가 에게 돈을 낸다는 뜻입니다. 브라우저들은 운영체제에 기대는 것으로 이 문제를 다룹니다. Chrome도 하드웨어에 이미 라이선스된 디코더가 있는 기기에서는 HEVC *영상*을 재생하고요. 다만 그 경로는 영상 재생용으로 연결되어 있지 정지 이미지용이 아닙니다. 그래서 `<img>`에 건네진 HEIC는 Chrome에서도, Firefox에서도, Edge에서도, 어느 운영체제에서든 거부됩니다.
애플 하드웨어의 Safari가 예외인데, macOS와 iOS에 디코더가 있고 Safari가 그것에 물어볼 수 있기 때문입니다. 그 밖의 어디서든 그 사진은 브라우저가 디코딩할 수 없는 것입니다.
그래서 변환기에게 남는 선택지는 정확히 둘이고, 그 둘 사이의 선택이 이런 종류의 도구에 대한 이야기의 전부입니다.
## 거의 모든 HEIC 변환기가 업로드를 원하는 이유
첫 번째 선택지는 디코더를 서버에 두는 것입니다. 사진이 업로드되어, 본 적도 없는 기기에서 디코딩되고, JPEG로 다시 인코딩되어 돌아옵니다. 거의 모든 “무료 온라인 HEIC 변환기”가 하는 일이고, 하나같이 파일을 달라고 하는 이유입니다. 게을러서가 아닙니다. 브라우저가 혼자서는 정말로 못 하거든요.
그 대가는 직설적으로 말할 만합니다. 휴대폰 사진은 대부분의 사람이 가진 가장 개인적인 파일이고, 아이폰에서 막 나온 HEIC는 보통 몇 미터 오차의 촬영 좌표와 초 단위 날짜, 카메라 식별자를 싣고 있습니다. 그런 폴더를 무료 서비스에 올린다는 것은 사진과 그것을 함께 넘긴다는 뜻입니다. 그다음에 벌어지는 일은 읽어 본 적 없는 개인정보 정책이, 들여다볼 수 없는 서버에서, 고른 적 없는 관할권의 규칙으로 정합니다.
두 번째 선택지는 디코더를 페이지에 두는 것입니다. [이 도구](https://abox.tools/ko/heic-jpg-변환/)가 하는 일이 그것이고요. WebAssembly로 컴파일한 `libheif`를 이 사이트에서 제공하는 파일로 싣고 다닙니다. 1.4 MB쯤이고, 한 번 내려받은 뒤에는 캐시됩니다. 내 브라우저가 그걸 내 기기의 성능으로 돌리고, 사진은 아무 데도 가지 않습니다. 페이지를 한 번 불러오고 나면 인터넷을 통째로 끊어도 계속 동작하는데, 업로드하는 변환기는 결코 해낼 수 없는 일이자 존재하는 가장 간단한 증거입니다.
1.4 MB가 대가의 전부입니다. 종량제 회선이라면 진짜 비용이고 알아 둘 만합니다. 그래서 페이지가 조용히 내려받는 대신 소리 내어 말해 줍니다.
## 변환이 사진에서 앗아 가는 것
HEIC와 JPEG는 다른 코덱이라, 사진을 디코딩했다가 다시 인코딩하지 않고 건너갈 방법이 없습니다. 그 두 번째 인코딩이 손실입니다. 실제로는 들리는 것보다 훨씬 덜 중요합니다.
- **화질 92**는 변환기가 시작하는 자리인데, 여기서 나온 사진은 보통의 시청 크기에서 원본과 구별하기가 아주 어렵습니다. 맑은 하늘 같은 매끈한 그러데이션에서 차이를 찾게 되실 텐데, 대체로 못 찾으실 겁니다.
- **JPEG는 더 큽니다.** 보통 3분의 1쯤 큰 것에서 두 배 사이 입니다. JPEG는 1992년의 코덱이고 HEVC는 아니니까요. 그게 거래입니다. 무엇이든 여는 더 큰 파일.
- **피할 것은 두 번 변환하는 것입니다.** 손실 인코딩은 매번 조금씩 값을 치릅니다. 누군가 이미 만들어 준 JPEG가 아니라 원본 HEIC에서, 한 번만 변환하세요.
손실을 전혀 원하지 않으신다면 형식 메뉴에 PNG가 있습니다. 파일 크기는 각오하셔야 합니다. PNG로 저장한 사진은 흔히 JPEG의 5~10배입니다. PNG의 압축은 풀과 피부가 아니라 평평한 색과 선화를 위해 설계되었기 때문입니다.
## 날짜와 카메라, 그리고 좌표
HEIC 변환기에 대한 흔한 불만은 사진이 찍힌 날을 잃은 채로 돌아와서, 휴가 내내 찍은 사진들이 오늘 날짜로 라이브러리 맨 아래에 정렬된다는 것입니다. 캔버스를 거쳐 변환하면 픽셀 말고는 아무것도 얻지 못하기 때문에 그렇습니다 캔버스에는 태그가 붙어 있지 않으니까요. 그러니 변환기가 메타데이터를 따로 가져오지 않는 한 그건 그냥 사라집니다.
여기 도구는 HEIC에서 EXIF 블록을 꺼내 JPEG에 써 넣으므로 날짜가 살아남습니다. 체크박스가 있고 기본으로 켜져 있습니다. 끄면 JPEG에는 사진 말고 아무것도 들어가지 않습니다.
정하시기 전에 목록을 보세요. 사진마다 그 줄에 파일이 GPS 좌표를 싣고 있는지가 적히고, 무엇을 변환하기 전에 적힙니다. 사진이 공개된 곳으로 간다면 그것이 읽어야 할 줄입니다. 내 라이브러리로 들어갈 사진이라면 메타데이터는 남기는 쪽이 거의 확실히 낫고요.
어느 쪽을 고르시든 태그 하나는 바뀌는데, 이유를 알아 둘 만합니다. HEIC는 회전을 두 군데에 기록합니다. 컨테이너와 EXIF 블록. 디코더는 디코딩하면서 컨테이너의 회전을 적용하므로, 건네지는 픽셀은 이미 바로 서 있습니다. 그런데 EXIF가 여전히 “이것을 90도 돌려라”라고 말하고 있으면 뷰어가 한 번 더 돌려서 세로 사진이 전부 옆으로 눕습니다. 그래서 방향 태그는 똑바로로 맞추고, 그 밖의 모든 것은 휴대폰이 쓴 그대로 복사합니다.
태그를 자세히 살펴보거나 이미 JPEG인 사진에서 태그를 지우고 싶으시다면 그건 다른 일이고, [그에 대한 가이드](https://abox.tools/ko/가이드/사진-위치정보-삭제/)가 따로 있습니다.
## 사람들이 걸려 넘어지는 것들
- **“.jpg”라는 이름의 HEIC.** 아주 흔합니다. 중간의 무언가가 변환은 하지 않고 이름만 바꿔 놓은 것이고, 그래서 여전히 열리지 않습니다. 변환기에 놓인 모든 파일은 이름이 아니라 첫 바이트로 판별되므로 이런 파일도 잘 됩니다. 진짜 JPEG인 파일이 자기 자신의 사본으로 변환되는 대신 그렇다는 말을 듣는 것도 같은 이유입니다.
- **파일 하나에 사진 여러 장.** 연사나 라이브 포토는 정지 사진을 여러 장 담을 수 있습니다. 전부 변환되고, 나머지에는 원본 이름 뒤에 번호가 붙습니다. 라이브 포토의 영상 쪽은 휴대폰이 HEIC 옆에 따로 두는 별개의 파일이라 여기 변환 대상으로 들어오지 않습니다.
- **AVIF는 HEIC가 아닙니다.** 같은 컨테이너에 다른 코덱이라 비슷해 보이지만, 요즘 브라우저는 전부 AVIF를 자체적으로 엽니다. 그러니 변환할 것이 없고, 도구는 되는 척하는 대신 그렇다고 말합니다.
- **근원에서 막기.** 휴대폰에서 설정 → 카메라 → 포맷 → 높은 호환성. 그때부터 새 사진은 JPEG가 됩니다. 저장 공간을 더 쓰고 이미 갖고 계신 사진에는 손대지 않지만, 이 일을 다시는 하지 않아도 된다는 뜻입니다.
- **공유하면 변환되기도 합니다.** 애플이 아닌 기기로 에어드롭하거나 메일로 보내면 iOS가 나가는 길에 변환해서 JPEG를 건네는 경우가 많습니다. 그런데도 HEIC로 도착했다면, 그러지 않는 경로로 넘어온 것입니다.
## 변환기가 업로드하는지 알아보는 법
이 도구뿐 아니라 어떤 도구에든 통하고, 15초쯤 걸립니다.
1. 페이지를 연 다음, 브라우저의 개발자 도구를 열고 '네트워크' 탭으로 가세요.
2. 사진을 변환하면서 지켜보세요. 내 기기에서 디코딩하는 도구는 그 순간 요청을 하나도 만들지 않습니다. 업로드하는 도구는 사진만 한 요청을 하나 만들고, 그 크기가 눈에 보입니다.
3. 더 간단하게는, 페이지를 불러온 다음 인터넷을 끊고 무언가를 변환해 보세요. 사진을 어딘가로 보내 디코딩하는 도구는 멈춥니다. 디코더를 싣고 다니는 도구는 멈추지 않습니다.
여기 변환기는 두 확인을 다 통과하도록 만들어졌고, 이 논의의 더 긴 판본이 [파일을 올려도 안전한가](https://abox.tools/ko/가이드/파일-업로드-안전한가/)에 있습니다.
짧은 답
HEIC를 JPG로를 열고 사진을 넣은 다음 “변환”을 누르세요. 화질 슬라이더는 그대로 두시고, 특별한 이유가 없다면 “날짜와 카메라, 설정 유지”도 켠 채로 두세요. JPEG가 돌아오고, 하나면 내려받기 버튼이, 여러 개면 zip이 나옵니다.
그동안 아무것도 업로드되지 않습니다. 이 작업에서는 흔치 않은 일이고, 그 이유가 이 페이지의 흥미로운 절반입니다.
변환의 전부가 이 셋입니다. 멈춰 볼 만한 것은 메타데이터 스위치이고, 그 이유는 아래 절에 있습니다.
HEIC가 실제로 무엇인지
HEIC는 JPEG 같은 의미의 이미지 형식이 아닙니다. MP4를 이루는 것과 같은 박스 구조로 된 컨테이너이고, 그 안에 HEVC 영상의 정지 프레임 한 장이 들어 있습니다. H.265라고도 하는 HEVC는 옛날 캠코더가 쓰던 코덱을 대체한 코덱이고, 아주 좋습니다. HEIC로 저장된 아이폰 사진은 같은 화질의 JPEG의 대략 절반 크기입니다.
애플은 2017년 iOS 11에서 이것으로 바꾸고 기본값으로 정했습니다. 그 말은, 누군가 설정에 들어가 “높은 호환성”을 고르지 않은 한, 그 사람의 휴대폰이 10년 가까이 찍은 모든 사진이 다음과 같은 형식으로 되어 있다는 뜻입니다.
윈도우는 스토어에서 확장을 받지 않으면 미리보기를 못 하고,
대부분의 웹 업로드 양식은 아예 거부하며,
적지 않은 오래된 데스크톱 소프트웨어는 들어 본 적도 없고,
Safari를 뺀 어떤 웹 브라우저도 보여 주지 않습니다.
사진에는 아무 문제도 없습니다. JPEG였을 때보다 나은 파일입니다. 그저 세상 대부분이 배운 적 없는 언어로 쓰여 있을 뿐입니다.
왜 Safari만 여는가
지금까지 써 본 모든 변환기가 왜 그랬는지를 설명해 주는 대목이라, 한 단락 쓸 값어치가 있습니다.
HEVC를 디코딩하려면 HEVC 디코더가 필요하고, HEVC에는 특허가 걸려 있습니다. 라이선스는 한 곳이 아닌 특허 풀들이 관리하고, 디코더를 싣는다는 것은 누군가 에게 돈을 낸다는 뜻입니다. 브라우저들은 운영체제에 기대는 것으로 이 문제를 다룹니다. Chrome도 하드웨어에 이미 라이선스된 디코더가 있는 기기에서는 HEVC 영상을 재생하고요. 다만 그 경로는 영상 재생용으로 연결되어 있지 정지 이미지용이 아닙니다. 그래서 <img>에 건네진 HEIC는 Chrome에서도, Firefox에서도, Edge에서도, 어느 운영체제에서든 거부됩니다.
애플 하드웨어의 Safari가 예외인데, macOS와 iOS에 디코더가 있고 Safari가 그것에 물어볼 수 있기 때문입니다. 그 밖의 어디서든 그 사진은 브라우저가 디코딩할 수 없는 것입니다.
그래서 변환기에게 남는 선택지는 정확히 둘이고, 그 둘 사이의 선택이 이런 종류의 도구에 대한 이야기의 전부입니다.
거의 모든 HEIC 변환기가 업로드를 원하는 이유
첫 번째 선택지는 디코더를 서버에 두는 것입니다. 사진이 업로드되어, 본 적도 없는 기기에서 디코딩되고, JPEG로 다시 인코딩되어 돌아옵니다. 거의 모든 “무료 온라인 HEIC 변환기”가 하는 일이고, 하나같이 파일을 달라고 하는 이유입니다. 게을러서가 아닙니다. 브라우저가 혼자서는 정말로 못 하거든요.
그 대가는 직설적으로 말할 만합니다. 휴대폰 사진은 대부분의 사람이 가진 가장 개인적인 파일이고, 아이폰에서 막 나온 HEIC는 보통 몇 미터 오차의 촬영 좌표와 초 단위 날짜, 카메라 식별자를 싣고 있습니다. 그런 폴더를 무료 서비스에 올린다는 것은 사진과 그것을 함께 넘긴다는 뜻입니다. 그다음에 벌어지는 일은 읽어 본 적 없는 개인정보 정책이, 들여다볼 수 없는 서버에서, 고른 적 없는 관할권의 규칙으로 정합니다.
두 번째 선택지는 디코더를 페이지에 두는 것입니다. 이 도구가 하는 일이 그것이고요. WebAssembly로 컴파일한 libheif를 이 사이트에서 제공하는 파일로 싣고 다닙니다. 1.4 MB쯤이고, 한 번 내려받은 뒤에는 캐시됩니다. 내 브라우저가 그걸 내 기기의 성능으로 돌리고, 사진은 아무 데도 가지 않습니다. 페이지를 한 번 불러오고 나면 인터넷을 통째로 끊어도 계속 동작하는데, 업로드하는 변환기는 결코 해낼 수 없는 일이자 존재하는 가장 간단한 증거입니다.
1.4 MB가 대가의 전부입니다. 종량제 회선이라면 진짜 비용이고 알아 둘 만합니다. 그래서 페이지가 조용히 내려받는 대신 소리 내어 말해 줍니다.
변환이 사진에서 앗아 가는 것
HEIC와 JPEG는 다른 코덱이라, 사진을 디코딩했다가 다시 인코딩하지 않고 건너갈 방법이 없습니다. 그 두 번째 인코딩이 손실입니다. 실제로는 들리는 것보다 훨씬 덜 중요합니다.
화질 92는 변환기가 시작하는 자리인데, 여기서 나온 사진은 보통의 시청 크기에서 원본과 구별하기가 아주 어렵습니다. 맑은 하늘 같은 매끈한 그러데이션에서 차이를 찾게 되실 텐데, 대체로 못 찾으실 겁니다.
JPEG는 더 큽니다. 보통 3분의 1쯤 큰 것에서 두 배 사이 입니다. JPEG는 1992년의 코덱이고 HEVC는 아니니까요. 그게 거래입니다. 무엇이든 여는 더 큰 파일.
피할 것은 두 번 변환하는 것입니다. 손실 인코딩은 매번 조금씩 값을 치릅니다. 누군가 이미 만들어 준 JPEG가 아니라 원본 HEIC에서, 한 번만 변환하세요.
손실을 전혀 원하지 않으신다면 형식 메뉴에 PNG가 있습니다. 파일 크기는 각오하셔야 합니다. PNG로 저장한 사진은 흔히 JPEG의 5~10배입니다. PNG의 압축은 풀과 피부가 아니라 평평한 색과 선화를 위해 설계되었기 때문입니다.
날짜와 카메라, 그리고 좌표
HEIC 변환기에 대한 흔한 불만은 사진이 찍힌 날을 잃은 채로 돌아와서, 휴가 내내 찍은 사진들이 오늘 날짜로 라이브러리 맨 아래에 정렬된다는 것입니다. 캔버스를 거쳐 변환하면 픽셀 말고는 아무것도 얻지 못하기 때문에 그렇습니다 캔버스에는 태그가 붙어 있지 않으니까요. 그러니 변환기가 메타데이터를 따로 가져오지 않는 한 그건 그냥 사라집니다.
여기 도구는 HEIC에서 EXIF 블록을 꺼내 JPEG에 써 넣으므로 날짜가 살아남습니다. 체크박스가 있고 기본으로 켜져 있습니다. 끄면 JPEG에는 사진 말고 아무것도 들어가지 않습니다.
정하시기 전에 목록을 보세요. 사진마다 그 줄에 파일이 GPS 좌표를 싣고 있는지가 적히고, 무엇을 변환하기 전에 적힙니다. 사진이 공개된 곳으로 간다면 그것이 읽어야 할 줄입니다. 내 라이브러리로 들어갈 사진이라면 메타데이터는 남기는 쪽이 거의 확실히 낫고요.
어느 쪽을 고르시든 태그 하나는 바뀌는데, 이유를 알아 둘 만합니다. HEIC는 회전을 두 군데에 기록합니다. 컨테이너와 EXIF 블록. 디코더는 디코딩하면서 컨테이너의 회전을 적용하므로, 건네지는 픽셀은 이미 바로 서 있습니다. 그런데 EXIF가 여전히 “이것을 90도 돌려라”라고 말하고 있으면 뷰어가 한 번 더 돌려서 세로 사진이 전부 옆으로 눕습니다. 그래서 방향 태그는 똑바로로 맞추고, 그 밖의 모든 것은 휴대폰이 쓴 그대로 복사합니다.
태그를 자세히 살펴보거나 이미 JPEG인 사진에서 태그를 지우고 싶으시다면 그건 다른 일이고, 그에 대한 가이드가 따로 있습니다.
사람들이 걸려 넘어지는 것들
“.jpg”라는 이름의 HEIC. 아주 흔합니다. 중간의 무언가가 변환은 하지 않고 이름만 바꿔 놓은 것이고, 그래서 여전히 열리지 않습니다. 변환기에 놓인 모든 파일은 이름이 아니라 첫 바이트로 판별되므로 이런 파일도 잘 됩니다. 진짜 JPEG인 파일이 자기 자신의 사본으로 변환되는 대신 그렇다는 말을 듣는 것도 같은 이유입니다.
파일 하나에 사진 여러 장. 연사나 라이브 포토는 정지 사진을 여러 장 담을 수 있습니다. 전부 변환되고, 나머지에는 원본 이름 뒤에 번호가 붙습니다. 라이브 포토의 영상 쪽은 휴대폰이 HEIC 옆에 따로 두는 별개의 파일이라 여기 변환 대상으로 들어오지 않습니다.
AVIF는 HEIC가 아닙니다. 같은 컨테이너에 다른 코덱이라 비슷해 보이지만, 요즘 브라우저는 전부 AVIF를 자체적으로 엽니다. 그러니 변환할 것이 없고, 도구는 되는 척하는 대신 그렇다고 말합니다.
근원에서 막기. 휴대폰에서 설정 → 카메라 → 포맷 → 높은 호환성. 그때부터 새 사진은 JPEG가 됩니다. 저장 공간을 더 쓰고 이미 갖고 계신 사진에는 손대지 않지만, 이 일을 다시는 하지 않아도 된다는 뜻입니다.
공유하면 변환되기도 합니다. 애플이 아닌 기기로 에어드롭하거나 메일로 보내면 iOS가 나가는 길에 변환해서 JPEG를 건네는 경우가 많습니다. 그런데도 HEIC로 도착했다면, 그러지 않는 경로로 넘어온 것입니다.
변환기가 업로드하는지 알아보는 법
이 도구뿐 아니라 어떤 도구에든 통하고, 15초쯤 걸립니다.
페이지를 연 다음, 브라우저의 개발자 도구를 열고 '네트워크' 탭으로 가세요.
사진을 변환하면서 지켜보세요. 내 기기에서 디코딩하는 도구는 그 순간 요청을 하나도 만들지 않습니다. 업로드하는 도구는 사진만 한 요청을 하나 만들고, 그 크기가 눈에 보입니다.
더 간단하게는, 페이지를 불러온 다음 인터넷을 끊고 무언가를 변환해 보세요. 사진을 어딘가로 보내 디코딩하는 도구는 멈춥니다. 디코더를 싣고 다니는 도구는 멈추지 않습니다.
여기 변환기는 두 확인을 다 통과하도록 만들어졌고, 이 논의의 더 긴 판본이 파일을 올려도 안전한가에 있습니다.