web-dev-qa-db-ja.com

PDFを編集するより良い方法はありますか?

最近、誰かに送信するために2、3のPDFを印刷する必要がありましたが、2、3の小さなテキストを編集(ブラックアウト)したかったのです。

簡単なグーグル検索では、この特定の目的のためのツールは見つかりませんでしたので、imagemagickとgimpに戻りました。

  • convert document.pdf document.png
  • gimp document-0.png
  • (ペイントブラシを使用してテキストを黒く塗りつぶします)
  • gimpから編集ページを印刷する
  • xpdfから残りのページを印刷

この戦略の問題は、変換プロセス(PDFからPNGまたはその他の形式)への品質が低下することです。 gimpでPDFを編集しようとしましたが、すぐには機能しませんでした。

この方法で編集を許可する特定のツールはありますか? (「実際の」リダクションである必要はありません。ハードコピーがハッキングされてテキストが表示されないため、「偽」リダクションが機能するようにソフトコピーを送信しません。) =

または、gimpでPDFを編集できるようにする秘trickはありますか?

24
bstpierre

(元々Okularを推奨しましたが、期待どおりに機能しませんでした)

1。ベクターエディターでドキュメントを編集します

InkscapeでPDFファイルを開き、テキストの上に長方形を描画して印刷することができました。 Inkscapeはベクターエディターなので、ラスタライズは必要ありません。一部のフォントは間違っているように見えました-おそらく、ドキュメントがWindowsマシンで作成されたもので、私のフォントは存在しません。

ラスタライズを伴わない方法は、編集済みのドキュメントを紙に印刷し、電子的に配布しない場合にのみ受け入れられます。停電中。

2。ビットマップエディタで開くときにラスタライズの解像度を上げる

Gimpでページを開くときの「品質低下」について:GimpでPDFファイルを直接開くことができます。プロセスでラスタライズされます。プロセスでの品質低下の量は、インポート時に選択する解像度の問題です。300dpiで非常にまともな品質が得られます(デフォルトは100)。

ImageMagickのconvertコマンドで解像度を上げるように指示すると、良い結果を得ることができます:

convert -density 300x300 ...
15
Sergey

基本的にあなたがやろうとしているのはPDFのハイライト/注釈付けですが、マーカーの不透明度と色にある程度の柔軟性があります(何かを検閲/削除する必要はなく、単に編集するだけです)。ここで回答をご覧になりましたか? PDFを強調表示または注釈するにはどうすればよいですか?

最も評価の高い回答の1つは、Xournalを推奨しています。これはここでは言及されておらず、私の好みの武器です。これは、手書きのメモを作成できるツールですが、PDFに注釈を付けることができる追加機能があります。デフォルトでは、注釈は別のファイルとして保存されますが、注釈付きのPDFを新しいPDFとしてエクスポートすることもできます。これにより、レイアウト、フォントなどが維持されます。

Xournalでは、「PDFに注釈を付ける」を選択し、黒塗りのマーカーを使用して編集する部分をマスクし、「PDFにエクスポート」します。

インターネットには、XournalがエクスポートされたPDFのテキストをラスタライズすることを示唆するいくつかのストーリーがあります(これを指摘してくれてありがとう、MHC)。これは真実ではないようです。単純な注釈では、テキストは選択可能および検索可能のままであり、ファイルサイズはそれほど増加しません(下の例では205 kbから220 kbに増加しました)。

インストールするには、ターミナルで実行します:Sudo apt-get install xournalまたはソフトウェアセンターから選択するだけです

Xournal interfaceResulting exported PDF

10
Tomas

私は毎日多くのPDFファイルを編集しているので、最善の方法を考えるのに多くの時間を費やしています。

私にとって最良の方法は、PDFを1ページのPDFファイルに分割し、次にGIMPで編集し、次に結合することです。私はすべてのファイルでimagemagickを使用していません(まったく使用していません)。したがって、すべてのページでテキストレイヤーを失うことはなく、編集された部分でのみです。 PDFファイル全体を一度にロードしないでください。メモリが枯渇するためです。

PDFを1ページのファイルに分割

PDFファイルを1ページPDFに簡単に分割するには、次のbash関数を使用します(〜/ .bashrcに配置します)。

function pdf_split(){
    for file in "$@"; do
        if [ "${file##*.}" != "pdf" ]; then
            echo "Skip $file because it's not PDF file";
            continue
        fi; 
        pages=$(pdfinfo "$file" | grep "Pages" | awk '{print $2}') 
        echo "Detect $pages in $file";
        filename="${file%.*}";
        unset Outfile;
        for i in $(seq 1 "$pages"); do
            pdftk "$file" cat "$i" output "$filename-$i.pdf";
            Outfile[$i]="$filename-$i.pdf";
        done;
    done;
};

split_pdf file.pdfと入力して、多くのPDFファイルを取得できるようになりました。

ファイルを編集する

ただし、このすべてのファイルを編集する必要があります。 gimp original-filename-*.pdfでできます。 GIMPでショートカットを構成し(メインウィンドウ->編集->ショートカット)、ファイルを置き換える(CTRL + Rを使用)、フィルターをぼかし(たとえばCTRL + D)、ファイルを閉じる(たとえばCTRL + W)、GIMPを終了する(例:CTRL + Q)。一度に多くのファイルにGIMPをロードしないでください。ただし、GIMPを開いた後のロードについては、数千のファイルでgimp original-filename-*.pdfを使用できます。

ファイルを結合する

pdftk originam-filename-*.pdf cat output "new-file-anon.pdf";でファイルを簡単に結合できます

すべて一緒に接続する

これらの操作は非常に反復的で退屈なので、すべて1つのスクリプトで接続します。

function pdf_redact(){
    for file in "$@"; do
        if [ "${file##*.}" != "pdf" ]; then
            echo "Skip $file because it's not PDF file";
            continue
        fi; 
        pages=$(pdfinfo "$file" | grep "Pages" | awk '{print $2}') 
        echo "Detect $pages in $file";
        filename="${file%.*}";
        unset Outfile;
        for i in $(seq 1 "$pages"); do
            pdftk "$file" cat "$i" output "$filename-$i.pdf";
            Outfile[$i]="$filename-$i.pdf";
        done;
        gimp "${Outfile[@]}";
        pdftk "${Outfile[@]}" cat output "$filename-anon.pdf";
        rm "${Outfile[@]}";

    read -p "Do you want open output file? " -n 1 -r
    echo    
    if [[ $REPLY =~ ^[Yy]$ ]]
    then
            evince "$filename-anon.pdf";
    fi

    read -p "Do you want upload output file to Scribd.com? " -n 1 -r
    echo 
    if [[ $REPLY =~ ^[Yy]$ ]]
    then
        scribd_up "$filename-anon.pdf";
    fi
    done;
};

このスクリプトの最新バージョンは、常に次の場所からアクセスできます。 http://dostep.jawne.info.pl/it/bashrc

スクリプトを続行するには、すべての編集後にGIMP(CTRL + Q)を忘れずに閉じてください。

中毒では、編集されたファイルを開いて(すべてを確認するために読むのが好きです)、他のスクリプトでScribdにアップロードするのが好きです- scribd_up ので、今では多くのPDFファイルは非常に効率的です。

5
Adam Dobrawy

Okularを使用できます。

Sudo apt-get install okular
  1. OkularでPDFを開きます。
  2. 押す F6
  3. 押す 8
  4. 編集するテキストを強調表示します。
  5. テキストを右クリックしてプロパティを選択し、「タイプ」を「ハイライト」として選択して、を押します Ok
  6. ファイルをPDFに印刷します。
5
eharvey

PDF Studio は非オープンソースであり、購入が必要なソフトウェアです。

この質問に関しては、バージョン8以降、手動の修正機能があります。ユーザーはテキストオブジェクトを選択して編集できます。コンテンツはPDFから削除され、黒い長方形に置き換えられます。

2013年第3四半期に予定されているバージョン9では、画像と形状の編集注釈と書き込みも使用できます。

2
Lilou

ここでの多くの解決策は、注釈(PDFの元のコンテンツを残す)による編集/ブラックアウトを推奨しているため、後でPDFをラスタライズして元のコンテンツを完全に削除することをお勧めします。 ( this guy ではありません。)

これを行う1つの方法は、同時に品質を維持し、ファイルサイズを低く保ちます(少なくとも私の場合は、白黒のページがたくさんある場合)。

$  convert -quality 100 -density 180 -compress Zip notreallyredacted.pdf trulyredacted.pdf

注:convertにはImageMagickが必要です。

注2:convertは、記入したフォームの内容を保持しません。迷子にならないようにするには、最初にevinceのような形式で(またはフォームに入力したアプリケーションで)およびでドキュメントを「ファイルに」印刷することをお勧めします。 thenラスタライズします。

2
balu

私と同僚が2つのpdfを編集する方法を見つけなければならなかったことを覚えています。詳細をコメントします... pdfをgimpで直接開きます(ターミナルで)

gimp the_file.pdf

編集が完了したら、変更を保存せずに、pdfファイルに印刷する代わりに...それはうまくいくように見えました。

2
maniat1k

無料のツールでPDFを開きます PDF-Xchange PDF Viewer 。黒い長方形を使用して、編集するテキストを黒く塗りつぶします。印刷する。これにより、簡単で高品質の「偽の」編集が可能になります。

2
MetaEd

このツールを試すこともできます: https://launchpad.net/updf

ここにあります(とにかく、テキストは選択可能です):

enter image description here

2
franzlorenzon

LibreOffice Drawを使用すると、探しているものをすばやく編集できます。完了したら、LibreOffice Draw形式として保存するか、PDF形式(File> Export as PDF)に再度エクスポートできます。

enter image description here

LibreOffice DrawにPDFファイルをインポートできるようにするには、最初にパッケージlibreoffice-pdfimportをインストールする必要があります。

Ubuntu Software Centerからインストールします( libreoffice-pdfimportInstall libreoffice-pdfimport )またはSudo apt-get install libreoffice-pdfimportを使用した端末経由。

2
Bruno Pereira

convertの正しい呪文を覚えたくない場合は、 pdf-redact-tools を使用できます。これは、PDFを爆発させるプロセスを自動化するシェルスクリプトですPNG画像と、編集後にそれらを再びマージします(gimpなどの選択したツールを使用します)。 apt-get installable です。

1
kynan

これを行うための最良の方法は、 http://www.pdfescape.com を使用することです。注釈を付けたり、テキストや画像を追加したり、編集したいものの周りに「白抜き」の長方形を描いたり、すばやくダウンロードして保存したりできます。また、複数ページのドキュメントでもうまく機能します。これは、他の多くのソリューションではうまく機能しないものです。たとえば、GimpまたはInkscapeで複数ページのドキュメントを開くと、一度に1ページしか開くことができません。このプロセスはPDFescapeではるかに高速です。 2ページのドキュメントを編集するプロセス全体は1分もかかりません。

1
user184478

PDFドキュメントを直接編集するための複数のエディター(pdfeditなど)があるか、pstoeditなどのサポートがより適切な他のベクター形式に変換します。ただし、ベクターをそのままにしてテキストを黒で塗りつぶすのは簡単であるため、リダクションを元に戻すのは簡単なので、愚かなことをするリスクがあるため、それらの使用はお勧めしません。

ベクトルからビットマップへのルートは、アルファチャネルまたはテキストが読みやすくなる可能性のある色の違いに伴う潜在的な問題を回避するための最も安全な方法であり、できれば1ビットのビットマップルートです。

可能であれば、元のドキュメントを常に編集し、PDFのペイントではなく情報を完全に削除する必要があります。

0
Grumbel

リストに追加します: Krita 。 PDFをインポートするときにdpiを定義できるため(@Sergeyが言ったように300に設定)、品質の低下はありませんでした。編集後、「PDFとしてエクスポート」をクリックします。最後に、私はKritaが長い間Photoshopのユーザーであった後、Gimpよりも直感的だと感じています。

0
jmjr