Base64 이미지 변환기 (온라인)
Base64 문자열이나 데이터 URI를 온라인 브라우저에서 이미지로 디코딩합니다. 미리보고, 치수와 MIME을 읽은 뒤 PNG, JPG, GIF, SVG로 다운로드하세요. 업로드 없음.
여기에 이미지를 끌어다 놓거나 붙여 넣거나 클릭하여 선택
PNG · JPG · GIF · WebP · SVG · ICO · BMP — 전부 브라우저 안에서 변환
Base64 이미지 디코딩이란 무엇인가요?
Base64 이미지 디코딩은 인코딩의 역과정입니다: Base64 알파벳(A–Z, a–z, 0–9, +, /)의 인쇄 가능 ASCII 문자 문자열을 받아 그 문자열이 나타내는 원본 이진 이미지를 재구성합니다. Base64 4문자 그룹마다 3바이트로 되돌아가며, 끝의 = 문자 하나나 둘이 패딩을 나타냅니다. 결과는 원래 인코딩된 정확한 파일입니다 — PNG는 PNG로, JPEG은 JPEG으로 돌아오며, 손실, 재압축, 크기 조정이 없습니다.
이 문자열은 이미지가 텍스트로 인라인된 곳이라면 어디서나 나타납니다. 스타일시트의 데이터 URI(background-image: url(data:image/png;base64,…)), HTML의 img src, JSON API 응답의 썸네일 필드, HTML 이메일에 포함된 로고, 설정 파일에 묶인 자산은 모두 디코딩을 기다리는 Base64 이미지입니다. 디버깅하거나, 감사하거나, 그런 자산을 추출할 때, 불투명한 문자열이 실제로 무엇인지 보고 실제 파일로 꺼내야 합니다 — 바로 이 디코더가 하는 일입니다.
이 연산은 순전히 기계적이며 키가 필요 없습니다. Base64가 암호화가 아니라 인코딩이기 때문입니다. 그래서 어떤 보안도 제공하지 않습니다: 문자열을 가진 누구나 즉시 이미지를 복구할 수 있습니다. Base64는 오직 이진 데이터가 텍스트용으로 설계된 채널 — HTML, JSON, URL, 이메일 헤더 — 을 제어 문자나 구분자에 손상되지 않고 통과하도록 하기 위해 존재합니다. 디코딩은 단지 그 텍스트 안전 포장을 풀어 원본 바이트를 돌려줄 뿐입니다.
이 도구는 전체 디코딩을 브라우저 안에서 로컬로 수행합니다. 실세계 문자열의 지저분함을 견딥니다 — 빠진 data: 접두사, 76자에서의 줄 바꿈, 복사·붙여넣기로 인한 흩어진 공백 — 그리고 MIME 타입이 선언되지 않으면 데이터의 매직 바이트로부터 이미지 포맷을 추론합니다. 애초에 이런 문자열을 생성하려면 짝이 되는 이미지 Base64 인코더를 참고하십시오.
// A Base64 PNG payload (no prefix) iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg== // The decoder infers the format from the leading bytes: // iVBORw0KGgo → PNG // /9j/ → JPEG // R0lGOD → GIF // UklGR → WebP // PHN2Zy → SVG (<svg) // Reconstructed as a real file, downloadable as image.png // (1 × 1 transparent PNG, 68 bytes — lossless round trip)
주요 기능
접두사 선택형 입력
완전한 데이터 URI나 맨 Base64 페이로드만 붙여 넣으십시오 — 디코더가 둘 다 처리합니다. data: 접두사가 없으면 이미지의 매직 바이트로부터 MIME 타입을 추론하므로 미리보기와 다운로드가 여전히 올바릅니다.
즉각적인 로컬 미리보기
디코딩된 이미지가 체커보드 배경 위에 즉시 렌더링되어 투명 PNG와 부분 알파 그래픽이 또렷하게 보입니다. 모든 것이 네트워크 요청 0건으로 브라우저 안에서 일어납니다.
치수, MIME, 크기 표시
미리보기 외에 도구는 디코딩된 픽셀 치수, 탐지된 MIME 타입, 재구성된 바이트 크기를 보고합니다 — 다운로드 전에 올바른 자산을 디코딩했는지 확인하기에 충분합니다.
공백 허용 디코딩
RFC 2045에 따라 76자마다 줄 바꿈된 문자열이나 흩어진 공백과 줄 바꿈과 함께 복사된 문자열은 자동으로 정리됩니다. 디코더가 디코딩 전에 모든 공백을 제거하므로 실세계의 복사·붙여넣기가 그냥 동작합니다.
무손실 다운로드
다운로드는 정확한 원본 바이트를 재구성하고 일치하는 확장자로 저장합니다 — .png, .jpg, .gif, .webp, .svg, .ico, .bmp. 재압축이나 변환이 없습니다: 파일은 인코딩된 것과 동일합니다.
내장 인코더
이미지 → Base64 탭은 방향을 되돌립니다: 이미지를 끌어다 놓거나, 붙여 넣거나, 탐색해 선택하면 크기 지표와 인라인 안내와 함께 Base64, 데이터 URI, HTML, CSS, Markdown, JSON 출력을 얻습니다 — 한 도구에서 완전한 왕복.
예시
PNG 데이터 URI 디코딩
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==
1 × 1 PNG, 투명 — 미리보기 렌더링, .png로 다운로드 가능
전체 데이터 URI를 붙여 넣으면 도구가 이미지를 즉시 렌더링하고, 실제 치수와 MIME 타입을 읽으며, 복원된 파일을 다운로드할 수 있게 합니다.
접두사 없는 원시 Base64
/9j/4AAQSkZJRgABAQEAYABgAAD…
매직 바이트로 JPEG 탐지 — 미리보기 + .jpg로 다운로드
data: 접두사가 없나요? 문제없습니다. 디코더가 선행 문자를 검사해 JPEG 시그니처(/9j/)를 인식하고 올바른 데이터 URI를 만들어 주므로 이미지가 그대로 렌더링됩니다.
청크된(줄 바꿈된) Base64
iVBORw0KGgoAAAANS UhEUgAAAAEAAAAB CAYAAAA…
공백 자동 제거 — 유효한 PNG 디코딩됨
76자마다 줄 바꿈된(RFC 2045) 문자열이나 흩어진 줄 바꿈과 함께 복사된 문자열은 자동으로 정리됩니다: 디코더가 디코딩 전에 모든 공백을 제거합니다.
Base64를 이미지로 변환하는 방법
- 1
Base64 문자열 붙여넣기
전체 데이터 URI나 원시 Base64 페이로드만 넣으십시오. 디코더는 공백과 줄 바꿈을 자동으로 제거하고 data: 접두사 유무에 관계없이 입력을 받습니다.
- 2
미리보기와 메타데이터 확인
이미지가 투명도가 보이도록 체커보드 위에 즉시 렌더링됩니다. 도구는 디코딩된 치수, MIME 타입, 바이트 크기를 보여 주며 — 접두사가 없으면 매직 바이트로부터 포맷을 추론합니다.
- 3
이미지 다운로드
다운로드를 클릭해 올바른 확장자로 복원된 파일을 저장하십시오. 디코딩이 무손실이므로 결과는 원래 인코딩된 이미지와 바이트 단위로 동일합니다.
흔한 함정
잘린 문자열(패딩 손실)
Base64 이미지 문자열은 0개, 1개, 또는 2개의 = 문자로 끝납니다. 짧게 끝나는 복사 — 패딩이나 마지막 몇 문자를 떨어뜨림 — 는 디코딩할 수 없고 오류를 표시합니다. 전체 값을 다시 복사해 고치십시오.
…WjR9awAAAABJRU5ErkJggg // missing trailing == — fails to decode
…WjR9awAAAABJRU5ErkJggg== // complete with padding — decodes cleanly
이미지가 아닌 데이터 붙여넣기
Base64는 이미지뿐 아니라 어떤 바이트도 인코딩할 수 있습니다. 인코딩된 PDF, ZIP, 일반 텍스트를 붙여 넣으면 문자열은 디코딩되지만 사진으로 렌더링되지 않습니다. 도구는 데이터가 유효한 이미지 데이터가 아니라고 보고합니다. 디코딩 전에 소스가 정말 이미지인지 확인하십시오.
JVBERi0xLjcN… // this is a Base64 PDF (%PDF header), not an image
iVBORw0KGgo… // this is a Base64 PNG — renders correctly
감싸는 코드 포함
CSS나 HTML에서 복사할 때 주변 구문 — url("…"), src="…", 따옴표 — 까지 데이터 URI와 함께 잡기 쉽습니다. 흩어진 래퍼 문자는 디코딩을 깨뜨릴 수 있습니다. 주변 코드가 아니라 data:…;base64,… 값(또는 맨 페이로드)만 복사하십시오.
url("data:image/png;base64,iVBORw0KGgo…")
// the url(" and ") are not part of the data data:image/png;base64,iVBORw0KGgo… // just the data URI
이중 인코딩되거나 URL 인코딩된 문자열
가끔 데이터 URI가 URL 인코딩되거나(+ 대신 %2B, / 대신 %2F) 또 다른 인코딩 계층에 감싸입니다. 그 계층을 먼저 디코딩하십시오. URL 디코더가 퍼센트 인코딩을 되돌려, 여기에 붙여 넣을 깨끗한 Base64를 남깁니다.
data:image/png;base64,iVBORw0KGgo%2B%2F… // %2B / %2F are URL-encoded + and /
data:image/png;base64,iVBORw0KGgo+/… // URL-decode first, then decode the image
일반적인 활용 사례
- 데이터 URI에서 자산 추출
- 스타일시트나 HTML에 데이터 URI로 인라인된 이미지를 발견했고 실제 파일이 필요한가요? 문자열을 붙여 넣고 미리보기를 확인한 뒤 원본 PNG, JPG, SVG를 다운로드하십시오 — 호스팅하거나 다시 만들 필요가 없습니다.
- API 응답 썸네일 검사
- API가 Base64 이미지 필드를 반환했고 무엇인지 보고 싶나요. 페이로드를 붙여 넣어 즉시 렌더링하고, 실제 치수와 타입을 읽고, 자세히 살펴보거나 버그 보고를 위해 저장하십시오.
- 깨진 인라인 이미지 디버깅
- 포함된 이미지가 페이지에서 렌더링되지 않나요. 그 Base64를 여기에 넣으십시오: 올바르게 미리보이면 데이터는 유효하고 문제는 마크업이나 MIME 타입에 있는 것이고, 실패하면 문자열 자체가 잘렸거나 손상된 것입니다.
- 설정이나 테마 파일에서 이미지 복구
- 빌드 도구와 테마 번들은 아이콘과 로고를 Base64로 자주 인라인합니다. 문자열을 디코딩해 편집하거나, 다시 내보내거나, 다른 곳에서 재사용할 수 있는 일반 파일로 자산을 꺼내십시오.
- 빌드 도구 출력 검증
- 번들러나 스크립트가 데이터 URI를 생성했고 출시 전에 유효하고 올바른지 확인하고 싶나요. 여기서 디코딩하는 것이 인코딩 단계가 기대한 이미지를 만들었는지 확인하는 가장 빠른 시각적 점검입니다.
- Base64를 공유 가능한 파일로 변환
- 누군가 채팅이나 문서로 이미지를 Base64 블롭으로 보냈나요. 붙여 넣고, 미리보고, 정상적으로 열거나 첨부하거나 업로드할 수 있는 실제 파일을 다운로드하십시오.
기술 세부사항
- 디코딩의 동작 원리
- 브라우저 내장 atob가 Base64 페이로드를 이진 문자열로 변환하고, 도구는 이를 한 바이트씩 Uint8Array에 복사합니다. 그 타입 배열은 탐지된 MIME 타입으로 태그된 Blob에 감싸이고, 오브젝트 URL이 미리보기와 다운로드 링크를 가리킵니다. Base64 4문자 그룹마다 3바이트를 산출하며, 끝의 = 패딩이 1바이트나 2바이트 나머지를 표시합니다. 이 과정은 정확하고 무손실입니다 — 재구성된 바이트가 원본 파일과 정확히 일치합니다.
- 매직 바이트 포맷 탐지
- 입력에 MIME 타입을 선언하는 data: 접두사가 없으면 디코더는 처음 몇 Base64 문자로부터 포맷을 식별하는데, 이 문자들은 파일의 시그니처 바이트를 인코딩합니다. iVBORw0KGgo는 PNG 헤더로, /9j/는 JPEG SOI 마커로, R0lGOD는 GIF로, UklGR는 RIFF/WebP 컨테이너로, PHN2Zy와 PD94bWw는 SVG의
- 네트워크 없음, 저장 없음
- 디코딩, 미리보기, 다운로드가 모두 로컬입니다. fetch도, XMLHttpRequest도, 서버 왕복도 없습니다 — 페이지가 수행하는 유일한 네트워크 활동은 자기 자신을 로딩하는 것뿐입니다. 붙여 넣은 문자열은 페이지 수명 동안 메모리에 보관되고 닫거나 새로 고치면 폐기됩니다. 이것이 도구를 기밀 이미지에 안전하고 오프라인에서 사용 가능하게 만듭니다.
모범 사례
- 패딩을 포함해 전체 문자열을 복사하세요
- Base64 이미지 문자열은 디코딩하려면 완전해야 합니다. 모든 문자, 특히 끝의 = 또는 == 패딩을 복사했는지 확인하십시오 — 중간에서 끝나는 값은 실패합니다. 디코딩에 실패하면 전체 문자열을 다시 선택해 복사하는 것이 가장 먼저 시도할 일입니다.
- 접두사 없는 문자열은 매직 바이트 탐지를 믿으세요
- 원시 페이로드만 있다면 그대로 붙여 넣으십시오 — data: 접두사를 손수 만들 필요가 없습니다. 디코더가 선행 바이트로부터 포맷을 추론하고 올바른 MIME 타입과 확장자를 부여합니다. 탐지된 타입을 일부러 재정의해야 할 때만 접두사를 수동으로 추가하십시오.
- 다운로드 전에 치수를 확인하세요
- 보고된 픽셀 치수와 MIME 타입을 의도한 자산을 디코딩했는지 점검하는 정합성 확인으로 사용하십시오 — 특히 여러 개가 들어 있는 파일에서 한 문자열을 꺼낼 때 그렇습니다. 예를 들어 1×1 결과는 보통 원하던 이미지가 아니라 추적 픽셀을 잡았다는 뜻입니다.
- Base64는 안전하지 않다는 것을 기억하세요
- 디코딩에 키가 필요 없으므로 이미지 콘텐츠를 숨기는 데 Base64를 절대 의존하지 마십시오. 보호될 것이라 기대하고 문자열을 받았다면 그렇지 않습니다 — 누구나 여기서 몇 초 만에 디코딩할 수 있습니다. 실제 보호에는 인코딩이 아니라 암호화와 접근 제어가 필요합니다.
- 재인코딩 왕복은 무손실입니다
- 같은 이미지를 디코딩한 뒤 재인코딩하는 것은 무손실이므로 두 탭을 거쳐 안전하게 왕복하며 파이프라인을 테스트할 수 있습니다. 자산을 줄여야 한다면 더 작은 데이터 URI로 재인코딩하기 전에 디코딩된 파일을 이미지 압축기로 압축하십시오.
자주 묻는 질문
이 Base64 이미지 변환기는 무엇을 하나요?
내 Base64 데이터가 어딘가로 업로드되나요?
data: 접두사를 포함해야 하나요?
어떤 이미지 포맷을 디코딩할 수 있나요?
내 Base64 문자열이 왜 디코딩에 실패하나요?
디코딩된 이미지를 PNG나 JPG로 어떻게 저장하나요?
Base64를 디코딩하는 것은 복호화와 같은가요?
아주 긴 Base64 문자열도 처리할 수 있나요?
이 Base64 이미지 문자열은 어디서 오나요?
디코딩이 품질을 떨어뜨리나요?
관련 도구
모든 도구 보기 →Base64 디코더 · 인코더 (Base64 Decoder & Encoder)
인코딩 & 포매팅
Base64를 온라인에서 무료로 인코딩하고 디코딩합니다. UTF-8과 이모지를 완벽 지원하는 실시간 변환으로, 100% 브라우저에서 처리되어 회원 가입이 필요 없습니다.
CSV to JSON 변환기 (CSV to JSON Converter)
인코딩 & 포매팅
브라우저에서 CSV를 JSON으로 변환합니다. RFC 4180, 타입 추론, 헤더 행, 큰 정수 안전 처리. 100% 비공개, 업로드 없음.
이미지 Base64 변환기 (온라인)
인코딩 & 포매팅
이미지를 온라인 브라우저에서 Base64 데이터 URI로 변환합니다 — PNG, JPG, SVG, ICO. HTML, CSS, Markdown, JSON 출력을 복사하세요. 100% 비공개, 업로드 없음.
JSON Diff 비교
인코딩 & 포매팅
두 JSON 파일을 브라우저에서 즉시 Diff 비교하세요. 나란히 보기 하이라이팅, RFC 6902 JSON Patch 출력, 타임스탬프·ID 같은 노이즈 필드 무시. 비공개, 업로드 없음.
JSON 포맷터 (JSON Formatter)
인코딩 & 포매팅
브라우저에서 JSON을 즉시 포매팅하고 유효성 검사를 수행합니다. 온라인 도구로 구문 검사, 오류 감지, 최소화, 복사를 지원하며 데이터는 서버로 전송되지 않습니다.
JSON Schema 검증기
인코딩 & 포매팅
JSON Schema 온라인 검증기. Draft 2020-12, 2019-09, Draft-07 지원에 JSON Pointer 경로 단위 오류 메시지. 100% 브라우저 처리, 업로드 없음, 무료.