PDF 5 MB を圧縮してファイルサイズを減らすための3つの手法
※ここでは「PDF 5 MB を圧縮してファイルサイズを減らす」ことを前提に、実際に手順を書いてみます。
導入文
5 MB くらいの PDF は「大きい」とだけ言われてしまいがちですが、実は送信先がメール添付やクラウドストレージの容量制限に引っかかるケースが少なくありません。
また、見た目は変わらないのにページ遷移が遅くなるなど、ユーザー体験が悪化するケースも。
今回ご紹介する3つの手法を組み合わせれば、ほとんどの PDF で 2 MB 未満のファイルに縮小することが可能です。
1. 画像の最適化 ― 分解能削減と圧縮率調整
PDF の大部分は画像が占めることが多いです。
画像処理がキーになる理由は二つあります。
-
分解能 (dpi) が高い
1 200 dpi でスキャンした文書は、実際に閲覧者が必要としている 300 dpi よりずっしり大きい。 -
圧縮方法が非効率
画像をそのまま埋め込んだ(例えば PNG)と、サイズが膨らむ。
手順
| ステップ | 具体例 | ツール |
|---|---|---|
| ① 画像を抽出 | pdfimages -j input.pdf images |
PDFBox, pdftools |
| ② DPI を下げる | convert images-000001.png -resize 300x output.png |
ImageMagick |
| ③ 圧縮率を設定 | convert output.png -quality 85% -define png:compression-level=9 output_opt.png |
ImageMagick |
| ④ PDF に再埋め込み | pdftk input.pdf update_info title.txt output temp.pdf → pdftk temp.pdf output final.pdf |
pdftk, Ghostscript |
ポイント
- 画像の種類:写真系は JPEG が圧縮に適しています。ラインアートやテキストは PNG(または JPEG も可)で十分です。
- 自動化:バッチスクリプトや PowerShell で上記一連作業を自動化すると、作業回数が減ります。
- 品質確認:圧縮後に目で確認し、文字が読めなくならないか、細部が失われていないかを確認してください。
2. PDF コンテンツの最適化 ― Ghostscript や Adobe Acrobat で「軽量化」
画像以外にも、フォント、メタデータ、不要なオブジェクト、ページオブジェクトの重複などがファイルサイズに影響します。
Ghostscript での圧縮
Ghostscript はオープンソースで、PDF の最適化に強力です。
gs \
-sDEVICE=pdfwrite \
-dCompatibilityLevel=1.4 \
-dPDFSETTINGS=/ebook \
-dNOPAUSE -dQUIET -dBATCH \
-sOutputFile=output_compressed.pdf \
input.pdf
-
-dPDFSETTINGSの値を変えるだけで、圧縮幅が調整できます。-
/screen→ ディスプレイ用(低解像度) -
/ebook→ 電子書籍用(中程度) -
/printer→ 印刷用(高解像度) -
/prepress→ 出版物用(ほぼ元の品質)
-
-
-dCompatibilityLevel=1.4は古い PDF フォーマットに落とし込み、オブジェクト数を減らします。
Adobe Acrobat Pro DC での軽量化
Adobe Acrobat Pro DC には「PDF を最適化」機能があります。
-
ファイル→保存し直し→最適化された PDF - 「画像」タブで DPI と圧縮率を手動設定
- 「オブジェクト」タブで不要なオブジェクト・ストリームを削除
- 「メタデータ」タブでバージョン情報や作成情報を削除
この GUI 手順は操作が直感的で、設定オプションも多いので、初めて PDF を圧縮する人でも安心です。
3. 不要な要素の削除 ― フォント・メタデータ・不要ページの除外
圧縮しても残る「余計なもので」の削除は重要です。
フォントの統合・削除
- PDF 内に埋め込まれている全てのフォントはサイズに直結します。
- Acrobat では「最適化された PDF」設定の「フォント」タブで、埋め込み可能なサブセットのみ埋め込む、あるいは 不要なフォントを完全に除外 できます。
- Ghostscript でも
-dSubsetFonts=trueでサブセット化できます。
メタデータの削除
PDF のヘッダーやトレイルに作者情報、編集履歴、暗号化情報などの メタデータ が残っています。
- Adobe Acrobat の「プロパティ」→「ドキュメント情報」 から削除。
- Ghostscript では
-dEmbedAllFonts=falseと併せて-dStripAllPages=trueで不要オブジェクトを除外。
不要ページの除外
時折、添付した PDF に説明資料やサンプルが混乱していることがあります。
- Apache PDFBox を使えば、ページ範囲を指定して抜き出せます。
java -jar pdfbox-app-2.0.27.jar ExtractPages -start 1 -end 10 input.pdf output.pdf
- また、オンラインサービス (Smallpdf、iLovePDF など) も「ページの削除」や「ページの結合」が簡単に行えます。
まとめ ― 効率的に 5 MB から 2 MB 以下へ
| 手法 | 主な効果 | 推奨ツール |
|---|---|---|
| 画像最適化 | 解像度・圧縮率調整 | ImageMagick, GIMP, Adobe Photoshop |
| PDF コンテンツ圧縮 | オブジェクト数削減、フォント・画像圧縮 | Ghostscript, Adobe Acrobat |
| 不要要素削除 | フォント、メタデータ、ページ削除 | Acrobat, PDFBox, Smallpdf |
- 画像を一括で圧縮 → まずは画像が原因か確認。
- Ghostscript で全体を軽量化 → 一度に大きなダウンロード。
- 不要要素を手動で除去 → さらにサイズを削減。
こうしておけば、5 MB 程度の文書をほぼ必ず 1–2 MB 前後に縮小できます。
大きすぎる PDF を送る前に、必ずこの3ステップを試してみてください。


コメント