PDFを画像に変換する方法は?


327

PDFページを画像に変換する必要があります。テキストが書かれた背景画像があるので、これを画像として保存すると、背景画像のみが保存されます。

ページ全体を画像に変換できるように、同じソフトウェアを使用できますか?


どうやらinkscapeでも可能です:stackoverflow.com/a/15484727/32453
rogerdpack

回答:


299
  1. imagemagickをインストールします。

  2. PDFが配置されている端末を使用する:

    • 完全なドキュメントの場合:

      convert -density 150 input.pdf -quality 90 output.png
      
    • 単一ページの場合:

      convert -density 150 input.pdf[666] -quality 90 output.png
      

それによって:

  • PNG、JPG、または(実質的に)その他の画像形式を選択できます。

  • -density xxxDPIを設定しますxxx(共通は150と300です)。

  • -quality xxxxxxPNG、JPG、およびMIFFファイル形式の圧縮を設定します(100は圧縮なしを意味します)。

  • [666]667 [0]番目のページのみをPNGに変換します(最初のページはゼロベースの番号付けです)。

  • その他すべてのオプション(トリミング、グレースケールなど)は、Image Magicの Webサイトで表示できます。


2
答えはそのままですが、解像度は非常に貧弱です。したがって、現時点では有用な答えではありません。convertに指定可能なパラメーターがある場合、これは変更される可能性があります。
エリヤリン

48
この答えは、はるかに高い品質であるaskubuntu.com/a/50180/11929
イライジャ・リン

6
あなたは追加することにより、密度を変えることができ-density 300、パラメータを
OHLÁLÁ

4
だから誰も密度を指定することで、ここの他の答えと同じくらい「良い」ことを確認できますか?:また信者へのメモとして、ImageMagickには、実際のpng元にPDFファイルから変換するには、「ghostscriptの」に出て呼び出しをgs -q NOPROMPT ...-sDEVICE=pngalpha -r150x150 -sOutputFile=/var/tmp/Yf%d -f/var/tmp/L -f/var/tmp/Fic1、あなたが取得する場合convert: no images defined output.png...それはあなたがghostscriptのインストールされていないことを意味します
rogerdpack

4
- ImageMagickのでPDFの解析は無効になっているbugs.archlinux.org/task/59778 -それは編集することによって手動で有効にすることができ/etc/ImageMagick-7/policy.xml、ファイルを削除してPDFから<policy domain="coder" rights="none" pattern="{PS,PS2,PS3,EPS,PDF,XPS}" />
Jezor

393

pdftoppmPDFをPNGに変換するために使用できます。

pdftoppm input.pdf outputname -png

形式を使用して、PDFのこの意志出力の各ページoutputname-01.pngで、01ページのインデックスであること。

PDFの単一ページの変換

pdftoppm input.pdf outputname -png -f {page} -singlefile

{page}ページ番号に変更します。インデックスは1なので-f 1、最初のページになります。

変換された画像の解像度を指定する

このコマンドのデフォルトの解像度は150 DPIです。値を大きくすると、ファイルサイズが大きくなり、より詳細になります。

変換されたPDFの解像度を上げるには、オプション-rx {resolution}とを追加します-ry {resolution}。例えば:

pdftoppm input.pdf outputname -png -rx 300 -ry 300

24
どうもありがとうございます。imagemagickやgraphicsmagickよりもはるかに優れた品質!
ダンジュー

7
pdftoppmは変換よりもはるかに高速である

4
これは、imagemagickよりもはるかに優れています。私の場合、Imagemagickは実際に予期しない方法で色を変更しました!
-NoBackingDown

13
これは良い-r 300ことですが、同じ値に設定する場合は、x解像度とy解像度を個別に指定するのではなく、少し簡単に記述できます。
mlc

2
imagemagickよりもpdftoppmの方がはるかに成功しました。
マイケルヘイズ

22

IIRC GIMPはPDFを使用できます。つまり、PDFを画像に変換できます。画像をすぐに編集したい場合-GIMPはあなたの友達です。


GIMPは確かに、各ページを1つのレイヤーとしてPDFを開くことができます。[名前を付けてエクスポート]を選択すると、現在のレイヤーのみが保存されるように見えますが、エクスポート後にレイヤーを簡単に削除して、[名前を付けてエクスポート]を再度実行できます。
ダンダスカレスク

12

現在受け入れ答えは仕事をしていませんが、サイズが大きい出力になり品質低下に苦しんでいます。

ここで与えられた答えの方法は、サイズが入力に匹敵し、品質の損失を被らない出力をもたらします。

TLDR-使用pdfimagespdfimages -j input.pdf output

リンクされた答えを引用する:

「品質の低下」の意味が明確ではありません。それは多くの異なることを意味する可能性があります。説明のためにいくつかのサンプルを投稿できますか?おそらく、低品質バージョンと高品質バージョンから同じセクションを切り取ってください(さらなる品質低下を避けるためにPNGとして)。

おそらく-density、より高いdpiで変換を行うために使用する必要があります。

convert -density 300 file.pdf page_%04d.jpg

(先頭に追加する-units PixelsPerInch-units PixelsPerCentimeter、必要に応じて。コピーはデフォルトでppiになります。)

更新: あなたが指摘したように、gscan2pdf(あなたがそれを使用している方法)はpdfimagespopplerからの)単なるラッパーです。 入力としてPDFを指定した場合pdfimages と同じことを行いませんconvert

convert PDFを取得し、何らかの解像度でレンダリングし、結果のビットマップをソースイメージとして使用します。

pdfimages埋め込まれたビットマップ画像をPDFで検索し、それぞれをファイルにエクスポートします。PDF内のテキストまたはベクトル描画コマンドを無視します。

その結果、一連のビットマップの単なるラッパーであるPDFを使用pdfimagesしている場合、生データを元のサイズで取得できるため、それらを抽出する作業がはるかに良くなります。PDFには生のJPEGデータが含まれている可能性があるため、おそらくの-jオプションも使用する必要がありますpdfimages。デフォルトでは、pdfimagesすべてをPNM形式に変換し、JPEG> PPM> JPEGの変換は損失の多いプロセスです。

だから、試してください

pdfimages -j file.pdf page

convertto .jpgステップを実行する必要がある場合とそうでない場合があります(PDFが使用していたビットマップ形式によって異なります)。

JPEG画像のシーケンスから自分で作成したPDFでこのコマンドを試しました。抽出されたJPEGは、ソースイメージとバイト単位で同一でした。それ以上の品質は得られません。


8

PDFがスキャンされる場合、画像はPDFの一部として既に保存されています。単にそれらを抽出する必要がありますpdfimages

pdfimages my-file.pdf prefix 

2
これは、スキャンされたpdfに最適なソリューションです。これにより、1つのコマンドで、元のjpgをさらに再圧縮することなく抽出できます。
ホセ・ゴメス・

3

gm変換から1ページを取得するには、PDF名に[N](Nは0から始まるページ番号)をgm convert foo.pdf[11] out.png追加します。つまり、PDFから12ページ目を取得します。

以下のためにpdftoppm使用-f N -singlefile、N、すなわち1から始まるページ番号であり、ここでpdftoppm -f 12 -singlefile foo.pdf out同じ結果のためには。出力ファイル名には常に「.png」が追加されているようで、これを止める方法はありません。


2

変換を使用し、-densityオプションを使用してより高い密度を指定 できます。

例えば。 convert -d 300 foo.pdf bar.png


密度とは何か、それが何をすることができるかについてもっと説明できますか?
rɑːdʒɑ

1
@AgentCool水平および垂直の画像密度(ppi)を指定します。
アルジュン

2

PDFの特定のページのみをPNGに変換したい場合は、次のようにパイプpdftkすることができますconvert上記を参照)。

pdftk document.pdf cat 12 output - | convert - document-page-12.png

1

Master PDF Editor(ver 2.2)にはこのオプションがあります。PDFファイルを開き、[ファイル]> [エクスポート]> [画像]に移動します。出力のさまざまなオプションを定義できるダイアログが表示されます。非常に便利です。この情報がお役に立てば幸いです。


無料版ですか有料版ですか?私のバージョンでは、オプションはグレーアウトされていますか?それは私が支払う必要があるということですか?有料版はありますか?
ジョシュアロビソン

0

PDF Modでは、PDFファイルのすべてまたは個々のページの画像をエクスポートすることもできます。

  • PDF ModでPDFファイルを開く
  • ページを選択-
  • 編集>画像のエクスポート
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.