大容量の画像ファイルを貼り付けたときの自動圧縮について
Updated at March 31, 2026デジタルカメラ、スマートフォンなどで撮影した高画質の画像をそのままドキュメントに添付すると、PDFに含まれる画像データが必要以上に解像度になることがあります。
もっぱら画面上や印刷して利用する場合、カラー、グレースケール画像で 350dpi (ppi) 程度あれば十分と言われています。
\includegraphic などのTeXコマンドは元画像の解像度を考慮せず組版された領域に貼り付けるため、高精細の画像が狭いエリアに貼り込まれ、解像度がこの目安を大幅に上回ることになります。
この現象は特に2カラムの論文など貼付け後の画像が小さい場合に生じやすいです。
不必要に高解像度な画像は実用上のメリットがほとんどなく、コンパイル時のプレビュー、ダウンロード、ファイル提出などで帯域を不必要に消費し、動作が遅くなります。
Cloud LaTeX ではこのように意図せず解像度が高すぎる状態を生じないよう、コンパイル後に自動で画像の圧縮を行います。
圧縮対象になる条件、部分
- ファイルの条件
- PDFファイルサイズが一定以上の場合。現在は10MBですが、予告なく変更することがあります。
- 後述の
skip_gs_compressオプションがない場合。
- 圧縮する部分 = 指定解像度より高いラスタ画像
- 指定解像度はカラー、グレースケールで350、白黒二値で1200です。
- ベクタ画像(Tikz、PDF)は通常対象になりませんが、内部アルゴリズムによって対象になる場合があります。
- 指定解像度未満のラスタ画像は変更されません(解像度が上がることはありません)。
圧縮を無効にする方法
自動圧縮はデータ転送量を削減し、ダウンロードとブラウザの動作を速くしますが、意図せずPDFが損なわれる場合もあります。
圧縮機能によってベクタ画像が壊れたり、稀な用途で非常に高解像度な状態のPDFが必要な場合は次の手順でこの機能を無効にできます。
- 新規ファイル作成から
.latexmkrcを作成。
.で始まり、拡張子はつかないことに注意してください。
すでに存在する場合は次の手順に進んでください。 $skip_gs_compress = 1;と記入。
他の記述がある場合は末尾に追記してください。
$skip_gs_compress = 1;