GNU/Linux >> Linux の 問題 >  >> Linux

このコマンドライントリックでPDFサイズを縮小する

私の妻は一年中生徒を指導しており、最近、彼女はいくつかのワークブックのページをスキャンしてファイルに入れ、生徒にメールで送信して宿題を割り当てたいと考えていました。彼女が私の助けを求めたので、私はGNOMEのドキュメントスキャンアプリケーションであるSimpleScanを使用しました。

その他のLinuxリソース

  • Linuxコマンドのチートシート
  • 高度なLinuxコマンドのチートシート
  • 無料のオンラインコース:RHELの技術概要
  • Linuxネットワーキングのチートシート
  • SELinuxチートシート
  • Linuxの一般的なコマンドのチートシート
  • Linuxコンテナとは何ですか?
  • 最新のLinux記事

Simple Scanには、画像とテキストの2つの解像度設定があり、ファイルをPDFとして保存します。残念ながら、スキャンの品質(単語、数字、グラフィックス)は、テキスト設定を使用すると不適切ですが、ファイルは非常に大きく、画像設定を使用すると、わずか数ページで最大5MBになります。コマンドpdf2psを使用して、後者の問題に対する答えを見つけました。 およびps2pdf 、Ghostscriptパッケージの一部です。このソリューションはPDFファイルのサイズを縮小し、電子メールでの共有を容易にします。

これらのコマンドのマニュアルページは簡潔であり、コマンドとその設定に関する適切なドキュメントを見つけるのは困難でした。そこで、manページの情報と、インターネットで見つけた他のさまざまなアドバイスを組み合わせて、次のことをまとめました。

PDFを縮小する方法

まず、元のPDFファイルのバックアップを別の名前で作成します(どこかでエラーが発生した場合に備えて)。

この例では、 Lesson5.pdfという名前のファイルを縮小する方法を示します。 。最初のステップは、次のように入力してPostScriptファイルに変換することです。

pdf2ps -dLanguageLevel=3 Lesson5.pdf

これにより、Lesson5.psという名前のファイルが作成されます 、そしてそのサイズを見ると、あなたは驚かれるかもしれません。たとえば、このサンプルファイルはPDFとして3.1MBでしたが、PSファイルとして29MBに膨らみました。信仰を持ってください。

次に、次のように入力します:

ps2pdf -dPDFSETTINGS=/ebook Lesson5.ps

これにより、以前のLesson5.pdfが小さいファイルで上書きされます(バックアップを作成する十分な理由)。必要に応じて、次のコマンドで新しいPDFに別の名前を指定できます:

ps2pdf -dPDFSETTINGS=/ebook -sOutputFile=Lesson5b.pdf Lesson5.ps

/ebookを使用して見つけました 圧縮の設定は、ファイルサイズと品質の間の適切な妥協点です。この例では、圧縮されたPDFは715KBで、元のサイズの約4分の1でした。

Ghostscriptを使用してPDFを圧縮する

また、gsを使用できることも学びました すべてを一度に実行するコマンド:

gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook \
-dNOPAUSE -dBATCH -dColorImageResolution=150 \
-sOutputFile=output.pdf someBigFile.pdf

しかし、gs manを見ると ページ、私は私が自分でこれを思い付く方法はないと思います。マニュアルページに含まれていないパラメータについては、Ghostscriptのオンラインドキュメントを参照してください。

覚えやすい2つのはるかに短いコマンドを使い続けると思います。


Linux
  1. Linuxでの並べ替えコマンドと例

  2. セミコロンで区切られたフィールドを使用してコマンドラインで.xlsx(ms Excel)ファイルを.csvに変換しますか?

  3. コマンドラインからストップワードリストを含むファイルで最も頻繁に使用されるN個の単語を検索しますか?

  1. ちょっとしたトリック:ランダムなファイルまたはファイル内の行を shuf で選択します

  2. Linuxでコマンドラインを使用してPDFをJPGに変換するには?

  3. Linuxでjar内のファイルをコマンドラインに置き換える方法は?

  1. xclipを使用してLinuxコマンドラインでコピーして貼り付けます

  2. 1 つのコマンドで .tar.gz ファイルを開く

  3. コマンドラインから特定のサイズのファイルを作成するにはどうすればよいですか?