Base64 → PDF
Base64 を PDF に。文書をどこにも送らずに。
API のレスポンス、データベースのフィールド、メールのソースにある Base64 を貼り付けてください。PDF はブラウザ内で復元されてプレビューに表示され、「ダウンロード」を押すと通常の .pdf ファイルとして保存されます。請求書、契約書、ラベルが端末の外に出ることはありません。
更新日 · すべてブラウザ内で動作
Base64 を PDF に変換ツール
JSON Web Token
オプション
Ctrl+Enter デコード Ctrl+Shift+C 結果をコピー 入力欄にファイルをドロップすると読み込めます
Base64 を PDF に変換する方法
- 01
Base64 の PDF を貼り付ける
data:application/pdf;base64, の接頭辞の有無を問わず、エンコードされた文書を貼り付けます。メール由来の改行は自動で取り除かれます。
- 02
PDF であることを確認する
デコードしたバイト列が %PDF のシグネチャで始まっていれば、「種類」に「PDF 文書」と表示されます。ブラウザがプレビュータブで表示します。
- 03
.pdf ファイルをダウンロードする
「ダウンロード」を押して .pdf として保存するか、プレビューから新しいタブで開きます。
Base64 の PDF はどこから来るのか
JSON は生のバイト列を扱えないため、電子署名、請求書発行、給与計算、配送ラベル、レポートなど、文書を返す API の多くは PDF を Base64 にして文字列フィールドに入れます。メールも同様で、PDF の添付ファイルは MIME ソースの 中で 76 文字ごとに改行された Base64 として送られます。どちらもそのままここでデコードでき、先に改行を消す必要は ありません。
Base64 文字列が PDF かどうかを見分ける方法
すべての PDF は %PDF- で始まり、Base64 では必ず JVBERi0 になります。文字列がこの
7 文字で始まっていれば PDF です。ほかの接頭辞からは、代わりに何が入っているかがわかります:
| 形式 | Base64 の先頭 | 先頭バイト(16 進) |
|---|---|---|
JVBERi0 | 25 50 44 46 2d (%PDF-) | |
| ZIP / DOCX / XLSX | UEsDB | 50 4b 03 04 (PK) |
| Gzip | H4sI | 1f 8b 08 |
| PNG | iVBORw0KGgo | 89 50 4e 47 0d 0a 1a 0a |
| JPEG | /9j/ | ff d8 ff |
UEsDB は ZIP コンテナで、Word や Excel のファイルも同じ形式です。H4sI は文書が
エンコード前に gzip 圧縮されていることを示します。結果を .gz ファイルとしてダウンロードし、展開すると PDF が
得られます。
PDF が開けないときの対処法
- 生の JSON からコピーした。JSON ではスラッシュが
\/とエスケープされることが あります。整形済みの表示から値をコピーするか、\/を/に置き換えてください。 バックスラッシュは Base64 として不正です。 - 途中で切れている。完全な PDF は
%%EOFで終わります。「16 進」タブで文書が途中で 終わっているなら Base64 が切れており、PDF リーダーは破損と判断します。 - 2 回エンコードされている。結果がテキストとして
JVBERi0で始まるなら、Base64 で 2 回エンコードされています。「入力へ送る」を押してもう一度デコードしてください。 - パスワードで保護されている。デコードはファイルをそのまま復元するだけなので、暗号化されて いた場合は PDF リーダーが引き続きパスワードを求めます。
コードで Base64 を PDF にデコードする
# Python
import base64
with open("document.pdf", "wb") as f:
f.write(base64.b64decode(response["pdf"]))
// Node.js
fs.writeFileSync("document.pdf", Buffer.from(json.pdf, "base64"));
# Shell, straight from an API response
curl -s https://api.example.com/invoice/42 | jq -r .pdf | base64 --decode > invoice.pdf
Java、C#、PHP、Go、PowerShell の例は Base64 デコードのコード例をご覧ください。
その他のデコーダー
Base64 をデコードするその他の方法
よくある質問
Base64 を PDF に変換:よくある質問。
Base64 文字列を PDF に変換するには?
このページの入力欄に Base64 を貼り付けてください。ブラウザ内でデコードされ、%PDF シグネチャから PDF と判別されてプレビューに表示されます。「ダウンロード」を押すと .pdf ファイルとして保存できます。
デコードした PDF が「破損している」と表示されるのはなぜ?
ほとんどの場合、コピーの際に Base64 が途中で切れたか変わってしまったことが原因です。完全な PDF は %%EOF で終わります。ログやスプレッドシートのセルではなく元のデータから値をコピーし直し、\/ などの JSON エスケープが取り除かれているか確認してください。
機密の PDF をここでデコードしても安全ですか?
はい。文書はあなたのブラウザ内の JavaScript でデコードされ、ローカルの blob URL からプレビューされます。アップロード、記録、保存は一切されないため、請求書、契約書、診断書などが端末の外に出ることはありません。
Base64 の PDF にサイズ制限はありますか?
何もアップロードしないので、サーバー側の制限はありません。非常に大きな Base64 テキストファイルは「ファイル」ボタンで読み込んでください。実質的な上限は端末のメモリです。