📄 PDFファイル
テスト用PDFファイル各種サイズ
102,400 bytes
application/pdf
104,857,600 bytes
application/pdf
10,240 bytes
application/pdf
10,485,760 bytes
application/pdf
1,048,576 bytes
application/pdf
26,214,400 bytes
application/pdf
512,000 bytes
application/pdf
52,428,800 bytes
application/pdf
5,242,880 bytes
application/pdf
PDFファイルについて
10 KB から 100 MB までのテスト用 PDF を無料で提供しています。アップロード機能のサイズ制限テスト、PDF 処理ライブラリの検証、メール添付上限の確認、帳票生成システムの性能テストに使えます。
PDF は末尾にオブジェクト位置を示す相互参照テーブル (xref) を持つため、転送が途中で切れると全体が読めなくなります。尻切れファイルの検出テストにも向いています。
よくある利用シーン
- PDF アップロードのサイズ制限テスト
- PDF.js などのビューアライブラリの動作確認
- メール添付の上限 (Gmail は 25 MB) の検証
- OCR やテキスト抽出ライブラリの処理時間の計測
関連するリファレンス・記事
📖 つまずきやすいポイント
10 KB から 100 MB まで、サイズをバイト単位で揃えた PDF です。アップロード上限の確認や PDF 処理ライブラリの検証に使えます。中身は検証用に生成したもので、実際の帳票のようなフォント埋め込み・フォーム・注釈は含みません。それらの扱いを試したい場合は手元の実ファイルを使ってください。
| ケース | 何が起きるか | どうする |
|---|---|---|
| gzip 圧縮しても小さくならない | PDF の内部ストリームはすでに Flate で圧縮済みです。転送時にもう一度圧縮しても数 % しか減らず、CPU だけを使います。 | nginx の gzip_types に application/pdf を入れません。既定でも対象外です。帯域を減らしたいならページ数か画像解像度を落とすほうが効きます。 |
| 小さい PDF でメモリが足りなくなる | 必要なメモリはファイルサイズではなく展開後の内容で決まります。1 MB の PDF に 10,000 × 10,000 px の画像が入っていれば、描画時は数百 MB になります。 | サイズ上限だけでなくページ数と解像度にも上限を設けます。Ghostscript や pdftoppm を使うなら -r (dpi) を明示し、ページ単位で処理してメモリを解放します。 |
| PDF でないファイルが PDF として通る | Content-Type: application/pdf も .pdf という拡張子も、送信側が名乗っているだけの値です。どちらも検証にはなりません。 |
先頭 4 バイトが 25 50 44 46 (%PDF) かを見ます。末尾に %%EOF があるかも合わせて確認すると、切断も同時に検出できます。 |
サイズと形式が通っても、暗号化された PDF・JavaScript を埋め込んだ PDF・外部リソースを参照する PDF は別の扱いが要ります。閲覧させるだけならサンドボックス内のビューアに任せ、サーバー側で開く場合は JavaScript の実行を無効にしてください。