カラーPDFを白黒PDFに変換するには?

カラーPDFを白黒PDFに変換するには?

いくつかのカラーテキストと画像を含むPDFを白黒のみを含む他のPDFに変換してサイズを小さくしたいです。また、画像のページ要素を変換せずにテキストをテキストとして保持したいと思います。次のコマンドを試しました。

convert -density 150 -threshold 50% input.pdf output.pdf

他の質問で発見されました。リンクしかし、私は望んでいないことを行います。出力のテキストが不都合な画像に変換され、選択できなくなりました。 Ghostscriptを試してみてください。

gs      -sOutputFile=output.pdf \
        -q -dNOPAUSE -dBATCH -dSAFER \
        -sDEVICE=pdfwrite \
        -dCompatibilityLevel=1.3 \
        -dPDFSETTINGS=/screen \
        -dEmbedAllFonts=true \
        -dSubsetFonts=true \
        -sColorConversionStrategy=/Mono \
        -sColorConversionStrategyForImages=/Mono \
        -sProcessColorModel=/DeviceGray \
        $1

ただし、次のエラーメッセージが表示されます。

./script.sh: 19: ./script.sh: output.pdf: not found

このファイルを作成する他の方法はありますか?

ベストアンサー1

GSの例

gs上記で実行したコマンドには、通常、$1コマンドライン引数をスクリプトに渡すために使用される後続のコマンドがあります。したがって、実際に何を試したかはわかりませんが、次のコマンドをスクリプトに入れようとしたようですscript.sh

#!/bin/bash

gs      -sOutputFile=output.pdf \
        -q -dNOPAUSE -dBATCH -dSAFER \
        -sDEVICE=pdfwrite \
        -dCompatibilityLevel=1.3 \
        -dPDFSETTINGS=/screen \
        -dEmbedAllFonts=true \
        -dSubsetFonts=true \
        -sColorConversionStrategy=/Mono \
        -sColorConversionStrategyForImages=/Mono \
        -sProcessColorModel=/DeviceGray \
        $1

次のように実行してください。

$ ./script.sh: 19: ./script.sh: output.pdf: not found

このスクリプトの設定方法はわかりませんが、実行可能である必要があります。

$ chmod +x script.sh

しかし、このスクリプトには間違いなく何か問題があります。しようとすると、次のエラーが発生します。

回復不能エラー:.putdevicepropsの範囲を確認する

デリゲート

代わりに、SU質問のこのスクリプトを使用します。

#!/bin/bash

gs \
 -sOutputFile=output.pdf \
 -sDEVICE=pdfwrite \
 -sColorConversionStrategy=Gray \
 -dProcessColorModel=/DeviceGray \
 -dCompatibilityLevel=1.4 \
 -dNOPAUSE \
 -dBATCH \
 $1

次に、次のように実行します。

$ ./script.bash LeaseContract.pdf 
GPL Ghostscript 8.71 (2010-02-10)
Copyright (C) 2010 Artifex Software, Inc.  All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
Processing pages 1 through 2.
Page 1
Page 2

おすすめ記事