PDF를 Base64로 변환기
최대 10 MB. 아무것도 업로드되지 않으며 파일은 기기를 벗어나지 않습니다.
<img src> 속성이나 CSS url()에 사용하세요.
data: 접두사 없이 — JSON 페이로드와 API용입니다.
문서를 페이지 안에 표시합니다. 내려받기 링크로 쓰려면 데이터 URI를 download 속성이 있는 <a href>에 넣으세요.
파일은 비공개로 유지됩니다
이 변환은 전적으로 브라우저 안에서 이루어집니다. 이미지는 업로드되지 않으므로 여기서 인코딩한 어떤 것도 저희 서버나 다른 누구에게도 전달되지 않습니다.
PDF를 Base64로 변환하기
이미지를 Base64로 인코딩하는 것은 대개 웹 성능에 관한 결정입니다. PDF는 거의 그렇지 않습니다. 사람들이 문서를 변환하는 이유는 반대편의 무언가 — 전자서명 서비스, 청구 시스템, 세무 당국, 메시징 API — 가 파일을 오직 JSON 필드 안의 텍스트로만 받기 때문입니다. 이것은 전송의 문제이고, 규칙이 다릅니다.
PDF를 Base64로 변환하는 방법
- 1 .pdf 파일을 업로드 영역에 놓으세요.
- 2 용량 줄을 확인하세요. 인코딩된 문자열은 약 3분의 1 더 크고, API 제한이 적용되는 것은 바로 그 숫자입니다.
- 3 JSON 필드에 넣을 거라면 원시 문자열을, 문서를 표시하거나 링크해야 한다면 데이터 URI를 복사하세요.
실제로 무엇에 쓰이는가
JSON에는 원시 바이트를 실어 나를 방법이 없습니다. API가 JSON 본문 안에 문서를 원한다면 문서는 먼저 문자열이 되어야 하고, 그 표준적인 방법이 Base64입니다. 전자서명 업체에 계약서를 보낼 때, 정부 포털에 청구서를 제출할 때, 트랜잭션 메일 API로 파일을 첨부할 때, 또는 문서를 메시지 큐에 넣을 때 만나게 됩니다. 어느 경우든 대안은 multipart 업로드이며, 많은 API가 지원하지만 일부는 그렇지 않습니다.
PDF를 웹페이지에 인라인하지 마세요
이 페이지의 embed 스니펫은 정말로 필요한 드문 경우를 위한 것입니다. 자체 완결된 HTML 파일, 오프라인 보고서, 이메일 미리보기 같은 것들이죠. 문서를 게시하는 좋은 방법은 아닙니다. 링크된 PDF는 스트리밍이 됩니다. 뷰어가 앞쪽 몇 페이지를 내려받아 보여 주는 동안 나머지가 도착하죠. 데이터 URI는 그럴 수 없습니다. 뷰어가 단 1바이트를 보기 전에 브라우저가 디코딩된 문서 전체를 메모리에 들고 있어야 하기 때문입니다. 수 메가바이트 파일에서는 즉각적인 미리보기가 멈춤으로 바뀌고, 페이지를 문서와 따로 캐시할 수도 없습니다.
파일 크기가 아니라 페이로드 한도를 보세요
4 MB짜리 PDF는 대략 5.4 MB의 텍스트가 되고, API가 재는 것은 바로 그 커진 숫자입니다. 요청 본문 한도가 몇 메가바이트인 경우는 흔합니다. 그래서 파일로 보면 여유 있게 들어갈 것 같던 문서가 인코딩 후에는 거부될 수 있습니다. 그 벽에 부딪혔을 때 답은 대개 PDF를 더 세게 압축하는 것이 아닙니다. 해당 API에 별도의 파일 업로드 엔드포인트나 사전 서명 URL이 있는지 확인하세요. 그쪽은 원시 바이트를 받으므로 33%를 통째로 건너뜁니다. 이 페이지는 10 MB에서 멈추는데, 이미 대부분의 JSON 엔드포인트가 받아 주는 범위를 넘어선 값입니다.