簡単な説明:LinuxでPDFファイルのサイズを縮小する方法を学びます。コマンドラインとGUIの両方の方法について説明しました。
申請書に記入していると、必要な書類をPDF形式でアップロードするように求められました。大きな問題ではありません。スキャンしたすべての画像を収集し、gscan2pdfツールを使用してそれらを1つのPDFに結合しました。
このPDFファイルをアップロードしようとしたときに問題が発生しました。最大ファイルサイズ制限を超えたため、アップロードに失敗しました。これは、PDFファイルのサイズをなんとかして縮小する必要があることを意味するだけです。
今、あなたはオンラインのPDF圧縮ウェブサイトを使うかもしれませんが、私はそれらを信用していません。重要なドキュメントが不明なサーバーにアップロードされているファイルはお勧めできません。アップロードしたPDFドキュメントのコピーを彼らが保持していないことを確信することはできません。
これが、ランダムなサーバーにPDFファイルをアップロードするのではなく、システムでPDFファイルを圧縮することを好む理由です。
このクイックチュートリアルでは、LinuxでPDFファイルのサイズを縮小する方法を紹介します。コマンドラインとGUIの両方のメソッドを紹介します。
方法1:LinuxコマンドラインでPDFファイルのサイズを小さくする
Ghostscriptコマンドラインツールを使用してPDFファイルを圧縮できます。ほとんどのLinuxディストリビューションには、Ghostscriptのオープンソースバージョンがすでに含まれています。ただし、念のためにインストールを試みることはできます。
Debian / Ubuntuベースのディストリビューションでは、次のコマンドを使用してGhostscriptをインストールします。
sudo apt install ghostscript
Ghostscriptがインストールされていることを確認したので、次のコマンドを使用してPDFファイルのサイズを縮小できます。
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/prepress -dNOPAUSE -dQUIET -dBATCH -sOutputFile=compressed_PDF_file.pdf input_PDF_file.pdf
上記のコマンドでは、入力および出力PDFファイルの正しいパスを追加する必要があります。
コマンドは怖くて紛らわしいようです。そのほとんどをコピーして貼り付けることをお勧めします。知っておく必要があるのは、dPDFSETTINGSパラメーターです。これが圧縮レベルを決定し、圧縮されたPDFファイルの品質を決定します。
dPDFSETTINGS | 説明 |
/ prepress(デフォルト) | 高品質の出力(300 dpi)ですが、サイズが大きくなります |
/ ebook | 中品質の出力(150 dpi)、中程度の出力ファイルサイズ |
/ screen | 出力の品質は低くなりますが(72 dpi)、出力ファイルのサイズは可能な限り小さくなります |
一部のPDFファイルはあまり圧縮されていないか、まったく圧縮されていない可能性があることに注意してください。一部のPDFファイルに圧縮を適用すると、元のファイルよりも大きなファイルが生成される場合もあります。そのような場合にできることはあまりありません。
方法2:GUIツールを使用してLinuxでPDFファイルを圧縮する
誰もがコマンドラインツールに慣れているわけではないことを理解しています。 LinuxのPDFエディターは、圧縮にはあまり役立ちません。これが、It’sFOSSで上記のGhostscriptコマンドのGUIバージョンの作成に取り組んだ理由です。
It’s FOSSチームのPanosは、Ghostscript用のPython-QtベースのGUIラッパーの作成に取り組みました。このツールは、入力ファイルを選択し、圧縮レベルを選択し、圧縮ボタンをクリックしてPDFファイルを圧縮できるシンプルなUIを提供します。
圧縮されたPDFファイルは元のPDFファイルと同じフォルダに保存されます。元のPDFファイルは変更されません。圧縮ファイルの名前は、元のファイル名に-compressedを追加することで変更されます。
圧縮に満足できない場合は、別の圧縮レベルを選択して、ファイルを再度圧縮できます。
PDF Compressorのソースコードは、GitHubリポジトリにあります。ツールを簡単に使用できるように、AppImage形式でパッケージ化されています。 AppImageの使用方法については、このガイドを参照してください。
ツールは開発の初期段階にあることを覚えておいてください。いくつかの問題が発生する可能性があります。もしそうなら、コメントで知らせてください、あるいはもっと良いことに、ここでバグを報告してください。
今後のリリースでは、さらにパッケージ(Snap、Deb、PPAなど)を追加する予定です。開発とパッケージングの経験がある場合は、お気軽にご連絡ください。
今後、このような小さなデスクトップツールの作成に取り組むのはFOSSチームになりたいですか?フィードバックや提案を歓迎します。