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


24

最近、誰かに送信するために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はありますか?


1
PDFはスケーラブルで、PNGはラスターグラフィックであるため、おそらく変換プロセスで品質が低下します。代わりに、SVGなどのスケーラブル形式に変換します。
匿名

@匿名:いいアイデアですが、使用できません。結果のSVGファイルは巨大です。私は30分後にメモリを消費するGiB程度の視聴者を殺す必要がありました。
-bstpierre

回答:


15

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

1.ベクターエディターでドキュメントを編集する

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

ラスタライズを伴わない方法は、墨消しの下からテキストを取得できるため、編集したドキュメントを紙に印刷し、電子的に配布しない場合にのみ受け入れられることに注意しください

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

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

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

convert -density 300x300 ...

1
+1して受け入れました!inkscapeを提案してくれてありがとう、合理的な仕事をしました(完璧ではありません-(私にとっては重要ではない)グラフィックオブジェクトをいくつか失いました)-しかし、非常に合理的です。そして、ヒントconvertも良かった:私が使用した呪文は良かったしconvert -density 300x300、品質の損失はありません。
-bstpierre

GIMPは非常によくpdfファイルを扱うことができます言及するための1
don.joey

8
一般住民への警告:ここで提案されたテキストを保持することを含むここでの編集方法(例えば、ラスタ化を回避するすべてのもの)は安全ではありません。テキストは、ブラックアウトの下から選択することも、ファイルのソースから読み取ることもできます。たとえば、freerepublic.com / focus / f
naught101

元の質問は、非ラスタライズ方法が許容されるハードコピーのみの送信について尋ねましたが、この回答は結果を電子的に配布する際のセキュリティリスクについて十分に警告していないため、ダウン投票します。
ジェシーグリック14

4
@JesseGlick:元の質問でも言及されていないユースケースに対処しないことを「罰する」のではなく、答えを編集するだけでした。これは、将来の訪問者にとってより有益です。
セルゲイ14

10

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

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

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

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

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

Xournalインターフェイス エクスポートされたPDF


Xournalは優れていますが、ラスタPDFのみをエクスポートできることを知っておく必要があります。つまり、プロセスですべてのテキストおよびベクター情報が失われます。それに対処できれば、Xournalがお好みのアプリケーションです。
グルタニメート

1
フィードバックをありがとう、@ MHC。Xournalはラスタライズしませ。詳細については、修正された回答を参照してください。
トマス

3
私は自分で試してみましたが、あなたは絶対に正しいです。混乱させて申し訳ありません。Xournalを使用してからしばらく経ちましたが、どういうわけか、エクスポートされたドキュメントは実際のPDFではないという印象を受けました。それをまっすぐに設定してくれてありがとう!
グルタニメート

1
これはうまく機能しますが、情報を編集するきれいな方法を見つけることができませんでした。描画ツールを使用して落書きする必要がありましたが、これは非常に乱雑に見え、希望するプロ意識に欠けています。それ以外の場合は、コンテンツをラスタライズするエクスポートに注目して、コンテンツを選択および検出できないようにします。
フリッカーフライ

テキストデータを画像で置き換える実際の編集については、この回答とImageMajickのconvertコマンドを使用する@baluの回答を組み合わせてください。
コラン

6

Okularを使用できます。

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

4
おそらく、ハイライトを黒にする方法に言及してください。
equaeghe

1
Okularは、これらの関数の任意の色(黒)で墨消しできます:テキストハイライト、フリーハンドライン、および内部塗りつぶしのあるポリゴンリンク。設定を独自のカスタム注釈ツールとして保存できます。何度も何度も簡単に使用できます。次に、ファイルをPDFに印刷するときに、リダクションが元に戻らないことを確認するために、「強制的にラスタライズ」する必要があります。Okularバージョン1.1.3
shadowbq

デフォルトでは黒で、最新のOkularバージョンで動作します。ありがとうございました!
-TheFrack

5

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

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

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

このbash関数を使用すると、PDFファイルを1ページのPDFに簡単に分割できます(〜/ .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、1000のファイルを安全に使用できるようにしてください。

ファイルを結合する

ファイルを簡単に結合できます: 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_upでScribdにアップロードするので、多くのPDFファイルを非常に効率的に編集できます。


2

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


それはwin32ツールのようです。Linuxポートへのリンクを見逃した場合は
お知らせください...-bstpierre

3
無料のポータブルPDF-Xchangeビューアーはwineで動作します。
サバコン

おかげで、これはワインで完璧に機能しました。inkscapeとgimpのソリューションは、単一ページのリダクションにのみ本当に役立ちます。
ギアロイドマーフィー

2

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

ここに画像の説明を入力してください

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

Ubuntu Software Center(libreoffice-pdfimport libreoffice-pdfimportをインストールします)またはを使用してターミナル経由でインストールしsudo apt-get install libreoffice-pdfimportます。


2

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

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

ここに画像の説明を入力してください


1
uPDFは、元のPDFとそのテキストおよびsvgコンテンツを保持するという点で優れています。ただし、圧縮レベルにいくつかの問題があるようです。編集したPDFのサイズは、元のPDFの約3〜4倍です。しかし、これを投稿してくれてありがとう。私はuPDFを知りませんでした。
グルタニメート

はい、私はそれがいくつかの問題を持っていることを知っています、それは少し荒いです。新しいリリースがこれらの問題を修正することを願っています... :)
franzlorenzon

前述のように、uPDFには多くのバグがあり(元に戻す/やり直しさえもできません)、私の場合はすべてうまくいきました。
バル

2

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

gimp the_file.pdf

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


何らかの理由で、gimpはファイルの編集を許可しません。convert最初にimagemagickを使用して変換し、変換されたファイルを編集する必要がありました。(受け入れられた答えを参照。)
bstpierre

わかりました、inkscapeのソリューションは有効です。繰り返しますが、Gimpはpdfファイルを直接編集できます。= D
maniat1k

GimpはほとんどのPDFファイルで動作するようですが、昨夜使用していたファイルは正しく動作しませんでした。Inkscapeはそのファイルを適切に処理しました。
bstpierre

2

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

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

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


4
よくある質問ごとに、宣伝している製品との関係を開示する必要があります。
bstpierre

これは答えよりも宣伝広告の可能性が高いですが、PDFstudioは本当に素晴らしいソフトウェアだと言わざるを得ません。少し高すぎるかもしれませんが、確かにLinux向けの最高のPDF編集スイートです。少なくとも試用版を試してみてください。
グルタニメート

2

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

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

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

注:convertImageMagickが必要です。

注2:入力convertしたフォームの内容は保持されません。それは迷子ないようにするために、あなたのようなもので、「ファイルに」文書を印刷したい場合がありますevince最初の(または任意のアプリケーションでは、フォームを記入)と、その後、それをラスタライズ。


権限の修正を追加しました。この答えは、Xournalの答えと組み合わせる必要があります。
コラン

1

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


1
ペイントしたデータを完全に消去しません。(私はまだそれを検索することができ、以下で「ハイライト」します)。
フランクノック

1

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


0

そこのような直接PDF文書を編集するための複数の編集者が、あるpdfedit、またはより良いサポートされる可能性があり、他のベクトル形式にそれを変換器、などpstoedit。しかし、ベクターをそのままにしてテキストを黒で塗りつぶすのは簡単であるため、リダクションを元に戻すのは簡単なので、愚かなことをするリスクがあるため、それらの使用はお勧めしません。

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

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


私は適切に編集することの問題を理解していますが、後に来る人のためにそれらを指摘するように注意してくれてありがとう。私の場合、PDF自体は使い捨てです。探しているのはハードコピーだけです。(PDFはハードコピーがあるとすぐに削除されます。)FWIW、動作pdfeditしませんでした:問題のテキストに黒い長方形を描画すると、ページの残りの部分が消えて、単一の黒い長方形。
-bstpierre

0

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


-1

LibreOfficeを使用してPDFファイルを作成する場合は、LibreOfficeでドキュメントを開き、編集するテキストを強調表示し、右クリックして文字を選択し、背景を選択して黒をクリックします。PDFにエクスポートします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.