PDF のファイルサイズを小さくする方法

PDF のファイルサイズを小さくするには、中の画像を縮小します。PDF が大きくなる原因は、ほぼ写真やスキャンだからです。Mac ではプレビューのフィルタで大まかに縮小でき、Ghostscript や Adobe Acrobat ではより細かく調整でき、qpdf は劣化なしで圧縮します。FileReshape の「PDF 圧縮」はブラウザー内で処理するためファイルはアップロードされず、元より大きいファイルを渡すこともありません。

PDF が大きくなる理由

PDF の中でテキストが占める容量はごくわずかです。テキストといくつかのグラフだけの50ページの報告書なら、1 MB を大きく下回ることもよくあります。PDF を大きくしているのは、ほぼ例外なく画像です。600 DPI のフルカラーに設定したスキャナーは、A4 1ページあたり約3,500万ピクセルを書き込みます。スマートフォンで撮ったままの写真は1,200万画素以上あることが多く、ページ上ではハガキ程度の大きさで印刷される場合でもそのままです。印刷会社向けに書き出したパンフレットは、すべての画像を印刷用の解像度のまま保持しています。

2つ目の原因はフォントです。多くのプログラムは文書で実際に使われている文字だけを埋め込むため、フォントの容量は小さく抑えられます。しかし、フォント全体を埋め込むファイルもあり、中国語、日本語、韓国語のフォントは1つで数 MB になることもあります。3つ目の、より小さな原因はファイル構造そのものです。何度も編集・保存された PDF には、もう使われていない古いオブジェクトが残っていることがあり、プログラムによってはファイルの一部を圧縮せずに保存します。

同じ圧縮ツールでも結果が大きく違うのはこのためです。スキャンやスマートフォンの写真を集めた PDF は、元の数分の一にまで小さくなることがあります。一方、画像のない Word から書き出した PDF はもともとコンパクトで、見た目を変えずに大幅に小さくできるツールはありません。

Mac のプレビューで PDF を小さくする

macOS に標準で入っている PDF ビューア「プレビュー」には、「ファイルサイズを縮小」(Reduce File Size)という Quartz フィルタがあります。手早く使えて追加のソフトも不要ですが、加減がききません。すべての画像の解像度を強く下げて再圧縮するため、特に細かい文字のスキャンや写真では、ぼやけたりブロック状のノイズが出たりすることがあります。とにかくサイズの上限内に収めたいときに使い、送る前に拡大して仕上がりを確認してください。元のファイルを残せるよう、別のファイル名で書き出しましょう。

  1. PDF をプレビューで開きます。
  2. 「ファイル」>「書き出す…」を選びます。
  3. 「Quartz フィルタ」のメニューで「ファイルサイズを縮小」(Reduce File Size)を選びます。
  4. 新しいファイル名を付けて「保存」をクリックし、新しいファイルの画質を確認します。

コマンドラインで Ghostscript を使って PDF を圧縮する

Ghostscript は Linux、macOS、Windows で使える無料の PDF・PostScript インタープリターです。pdfwrite デバイスは PDF を読み込んで新しい PDF を書き出し、PDFSETTINGS オプションで画像解像度のプリセットを選びます。/screen は約 72 DPI を目安とし、最も小さく粗いファイルになります。/ebook は約 150 DPI で、画面で読むにはちょうどよいバランスです。/printer と /prepress は印刷用に約 300 DPI を保ちます。

Ghostscript はファイルを編集するのではなく丸ごと作り直すため、出力が常に小さくなるとは限りません。また、一部のフォームフィールドなど、PDF の対話的な要素が同じ形で引き継がれないことがあります。結果を開いて元のファイルと比べてください。Windows では、プログラム名が gs ではなく gswin64c になります。

# Rebuild the PDF with images at about 150 DPI
gs -sDEVICE=pdfwrite -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile=small.pdf input.pdf

qpdf で PDF を劣化なしで圧縮する

qpdf は、ページの内容には手を付けずに PDF の構造を変更する、無料のオープンソースツールです。圧縮されずに保存されているストリームを圧縮したり、PDF 内の多数の小さなオブジェクトを圧縮されたオブジェクトストリームにまとめたりできます。処理後もページの見た目はまったく変わりません。削減できる量はたいてい控えめで、数パーセント程度のことが多く、単純な生成ツールで作られたファイルではそれ以上になることもありますが、大きな画像には効果がありません。内容を一切変えてはいけない場合の、安全な最初の一手です。

qpdf --object-streams=generate --compress-streams=y --recompress-flate input.pdf smaller.pdf

Adobe Acrobat で PDF を小さくする

Adobe Acrobat には「ファイルサイズを縮小」(Reduce File Size)コマンドがあり、最近のバージョンでは「PDF を圧縮」ツールの中にあります。Pro 版にはさらに「PDF の最適化」(PDF Optimizer)もあります。ファイルサイズの縮小はワンクリックで実行できます。最適化では、カラー、グレースケール、白黒の画像ごとに目標の解像度と圧縮方法を個別に設定でき、不要な埋め込みフォントを削除したり、注釈やフォームのデータなどの隠れたデータを破棄したりできます。ファイルの各部分がどれだけ容量を使っているかを調べる機能もあり、なぜファイルが大きいのか分からないときに役立ちます。メニュー名は Acrobat のバージョンによって変わっているので、見つからない場合はツールの一覧で「圧縮」や「最適化」を検索してください。

FileReshape を使ってブラウザーで PDF を圧縮する

FileReshape の「PDF 圧縮」ツールは、Windows、Mac、Linux、Chromebook、スマートフォンのブラウザーで動作します。PDF はお使いの端末上で読み込まれて書き直され、アップロードされません。3つの方法が用意されており、結果には必ず圧縮前と圧縮後のサイズが表示されます。

おすすめは「画像を縮小し、テキストは残す(推奨)」です。PDF 内の JPEG の写真やスキャンを探し、ページに必要な以上の画素数があるものを縮小して、より低い JPEG 画質で保存し直します。画質は「小さいファイル」(約 96 DPI、JPEG 60 %)、「バランス」(約 150 DPI、JPEG 72 %)、「高画質」(約 200 DPI、JPEG 82 %)から選べ、DPI は A4 または Letter サイズのページを基準にしています。すでに小さい画像は拡大されず、画像が置き換えられるのは10 %以上小さくなる場合だけです。テキスト、フォント、リンク、しおり、フォームフィールドはそのまま残ります。再エンコードされるのは通常の RGB またはグレースケールの JPEG 画像だけで、スクリーンショットのような劣化なしの画像、印刷用ファイルの CMYK 画像、マスク付きの画像、ファクス方式で圧縮された白黒のスキャンはそのままです。

「劣化のない最適化のみ」は、上で紹介した qpdf のコマンドに近い方法です。圧縮されずに保存されている部分を圧縮し、圧縮されたオブジェクトストリームを書き出し、どこからも参照されていないオブジェクトを取り除きます。ページ上のものは何も変わりません。「ページを画像にする」は、すべてのページを選んだ解像度の JPEG として描き直します。スキャンでは最も小さいファイルになりますが、テキストの選択や検索はできなくなり、リンク、しおり、フォームフィールドも失われます。

選んだ方法でファイルが小さくならない場合は、ダウンロードは提供されず、両方のサイズと別の方法の提案だけが表示されます。そのため、うっかり大きいファイルを受け取ってしまうことはありません。一度に処理できる PDF は1つです。暗号化された PDF は、パスワードなしで開けても編集が制限されているものを含め、圧縮できません。また、どんな変更でもデジタル署名は無効になるので、署名する前に圧縮してください。

  1. 「PDF 圧縮」のページを開き、PDF をボックスにドロップします。
  2. 推奨の方法と画質「バランス」のままにするか、別のものを選びます。
  3. 「PDF を圧縮」をクリックし、2つのサイズを比べて、小さくなったファイルをダウンロードします。

ページを削除する、または PDF を分割する

ファイルを小さくするいちばんの近道は、送る量を減らすことである場合もあります。受け取る相手が文書の一部しか必要としないなら、不要なページを削除するか、必要な数ページだけを抽出しましょう。削除したページにしか出てこない画像は新しいファイルに含まれないので、スキャンなら削ったページ数にほぼ比例して小さくなります。

メールサービスに大きな添付ファイルを拒否された場合も、分割が役に立ちます。多くのサービスでは添付ファイルの上限が10〜25 MB 程度で、中にはエンコード後のサイズで数えるものもあり、これは元のファイルより約3分の1大きくなります。40 MB のスキャンを「PDF 分割」ツールで2つか3つに分け、別々のメールで送るか、分けたファイルもさらに圧縮してください。画面で読めればよいスキャン文書なら、ページを JPG 画像に変換するのも1つの方法です。

どの方法を使えばよいか

変更が最も少ない方法から始めましょう。内容をまったく変えてはいけない場合は、劣化のない最適化を試します。スキャンや写真の多い PDF では、画像を約 150 DPI に縮小します。この解像度なら画面上でも鮮明で、一般的なオフィスでの印刷にも十分です。約 96 DPI や 72 DPI まで下げるのは厳しいサイズ制限に収める必要があるときだけにし、小さな文字が読めるか確認してください。どの方法でも、捨てた細部は元に戻せないので、元のファイルは必ず残しておきましょう。

よくある質問

PDF が小さくならないのはなぜですか?

画像が少ないか、画像がすでに十分に圧縮されている可能性があります。テキストとフォントは容量が小さく、たいていすでに圧縮されています。その場合、ファイルを小さくする主な方法は、不要なページを削除することです。

PDF を圧縮すると画質は落ちますか?

qpdf や FileReshape の「劣化のない最適化のみ」のような劣化なしの方法では、見た目は何も変わりません。画像を縮小する方法では写真やスキャンの細部は失われますが、テキストは鮮明なままです。ページを画像にする方法では、テキストにも影響が出ます。

FileReshape を使うと PDF はアップロードされますか?

いいえ。PDF はお使いの端末上でブラウザーによって読み込まれ、書き直されます。ファイルがサーバーに送信されることはありません。

スキャンした PDF には何 DPI を使えばよいですか?

画面で読む場合や通常の印刷なら、約 150 DPI で十分です。小さな文字や細かい部分が重要な場合は 200〜300 DPI を使い、約 96 DPI 以下はちょっとした確認用のコピーにだけ使ってください。

パスワードで保護された PDF を圧縮できますか?

FileReshape ではできません。そのファイルに対して使うことが認められているツールで先に保護を解除し、パスワードなしのコピーを圧縮してください。