web-dev-qa-db-ja.com

印刷時にPDF)でテキストと背景色を反転させることは可能ですか?

私は既存のPDF完全に黒い背景ですべてのテキストは白です。

テキストを黒で印刷し、黒の背景をまったく印刷しないようにする方法はありますか?

BluebeamとAdobe PDFを持っています。

18
Ron

おかしなことに、これには「合法的な」ユースケースがあり、特に視力の弱い人がいます。 Acrobatおよびその他のリーダーは、表示用の色(例:EvinceのCtrl-I、およびAcrobat Reader Xの[ユーザー補助]メニュー)を上書きできますが、奇妙なことに印刷用ではありません。ただし、GhostScriptのpdf2psコンバーター(またはファイルを書き込むだけの偽のPSプリンタードライバー)を使用してPostScriptファイルを取得し、次のように入力してファイルを編集します。

{1 exch sub} settransfer 

ファイルの最初の行として、そのPostScriptファイルを印刷します。そうすることで、PDFを画像に変換して反転した場合よりも、より忠実にドキュメントをレンダリングできます。

12
AlwaysLearning

簡単な方法技術的な方法があります。

技術的な方法は、 Ghostscript がインストールされており、.../binフォルダがPATHに追加されている場合、 PDFをコマンドラインから次のように呼び出すことで、色を反転できるはずです:

gswin64 -o C:/outputfile.pdf -sDEVICE=pdfwrite -c "{1 exch sub}{1 exch sub}{1 exch sub}{1 exch sub} setcolortransfer" -f C:/inputfile.pdf

gswin64.../binフォルダーにあります)は、32ビットバージョンをダウンロードした場合はgswin32と呼ばれ、* nixシステムではWindowsの場合、C:/outputfile.pdfC:/inputfile.pdfを入力ファイルの実際のパスと出力ファイルの目的の場所に置き換えてください。また、私の経験では、パスディレクトリにスペースが含まれていると、引用符で囲んでも少し問題が発生する可能性があることに注意してください。

{1 exch sub}{1 exch sub}{1 exch sub}{1 exch sub} setcolortransfer行を別の.psファイルに入れて、コマンドに.psファイルを追加しない限り、一部のバージョンのGhostscriptが失敗する可能性があることにも注意してください。

(これは実際には上記のMateen Ulhaqの回答をより具体化したバージョンです)

簡単な方法は、上記のいずれかを行うことに煩わされない場合は、ウェブサイト InvertPDF.com を使用できることです=これですべて(さらにもう少し)できます。これは私自身のWebサイトであり、このスレッドを作成しようとしているときに偶然このスレッドに遭遇しました。この答えが、次の人が同様のことを達成しようとしたり、独自のオフラインスクリプトを作成したりするのを容易にすることを願っています。

3
Jack Crawford

このページ によると、ImageMagickでそれを実現できる可能性があります。ただし、PDF)は反転される前に画像に変換されます。品質が十分でない場合は、これで、DPI番号を調整できるはずです。

convert -density 300 -negate "input.pdf[1-999]" output.pdf

置換300希望のDPIと1-999希望するページ範囲。

[〜#〜]注[〜#〜]:このコマンドは古いバージョンのImageMagick用であり、レガシーユーティリティがインストールされていることを確認する必要があります。

Legacy Utilities

3
bdr9

以前に投稿された解決策はどれもうまくいきませんでしたので、この簡単なbashスクリプトを書きました。 pdftkawkに依存します。コードをファイルにコピーして実行可能にするだけです。次に、次のように実行します。

$ /path/to/this_script.sh /path/to/mypdf.pdf

スクリプト:

#!/bin/bash                                                                      
pdftk "$1" output - uncompress | \                                               
awk '                                                                            
  /^1 1 1 / {                                                                    
    sub(/1 1 1 /,"0 0 0 ",$0);                                                   
    print;                                                                       
    next;                                                                        
  }                                                                              

  /^0 0 0 / {                                                                    
    sub(/0 0 0 /,"1 1 1 ",$0);                                                   
    print;                                                                       
    next;                                                                        
  }                                                                              

  { print }' | \                                                                 
pdftk - output "${1/%.pdf/_inverted.pdf}" compress

このスクリプトは私にとっては機能しますが、走行距離は異なる場合があります。特に、色が1.000 1.000 1.000ではなく1 1 1の形式でリストされることがあります。スクリプトは必要に応じて簡単に変更できます。必要に応じて、色変換を追加することもできます。

1
John Cole

Acrobat Reader Xの場合

編集->環境設定->アクセシビリティ選択:ドキュメントの色を置き換える選択:カスタム色

残りのオプションは、個人の好みに応じて設定します。

注:これはドキュメントを変更するのではなく、ビューと印刷方法を変更するだけです。

1
Bas

もっと心地よいグレースケールが必要で、ドキュメントを画像に変換しても問題ない場合は、これを.batファイルに入れて、PDFを.batファイルにドラッグします。

"C:\Program Files\gs\gs9.20\bin\gswin64c" -o inverted.pdf -sDEVICE=pdfwrite -c "{1 exch sub}{1 exch sub}{1 exch sub}{1 exch sub} setcolortransfer" -f %1
convert -brightness-contrast 3,-18 -compress lzw  -density 300 -colorspace Gray inverted.pdf output.pdf

最初のコマンドでGhostscriptをインストールする必要があります(正しいパスを指定してください)。 2番目のコマンドには、レガシーユーティリティを備えたImageMagickをインストールする必要があります。

0
Mateen Ulhaq

多くの人がEdit-> Preference-> Accessibilityメソッドの使用を提案しましたが、残念ながら私にはうまくいきませんでした。 PDF=設定をテストして遊んだ後、私はなんとか欲しかったものを手に入れました!

  • Print(Ctrl + P)に移動します
  • クリック詳細設定
  • チェック設定:カスタム
  • 左パネルから出力をクリックします
  • Color:の下でComposite Greyを選択します
  • 否定ボックスをチェックします
  • クリック[〜#〜] ok [〜#〜]

これでうまくいくはずです!

重要な注意!
このファイルを直接PDF=に印刷することをお勧めします。特に、空白が黒くなるため、1ページに複数のページを印刷する場合は、

最後に、ドキュメントを別のPDFとして印刷する場合は、ページのサイズと処理の下でFitをクリックし、両方のチェックボックスをオンにします-"用紙を選択してくださいサイズおよび必要に応じてカスタム用紙サイズを使用。 (不要な空白を避けるため)

この助けを願っています!

0
Xin Yi