web-dev-qa-db-ja.com

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

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

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

314
  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 xxxは、DPIをxxxに設定します(共通は150と300です)。

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

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

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

287
Binarylife

pdftoppmを使用して、PDFを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
381
enzotib

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

22
tesseract

現在受け入れられている答えは仕事をしますが、サイズが大きい出力となり、は品質の低下に悩まされます。

here が与えられた答えのメソッドは、サイズが入力に匹敵する出力をもたらし、品質の損失を被りません。

TLDR-pdfimagesを使用:pdfimages -j input.pdf output

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

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

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

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

(必要に応じて-units PixelsPerInchまたは-units PixelsPerCentimeterを追加できます。コピーのデフォルトはppiです。)

更新:指摘したように、gscan2pdf(使用方法)はpdfimages( from poppler )。 pdfimagesは、PDFを入力として指定した場合にconvertと同じことを行いません。

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

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

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

だから、試してください

pdfimages -j file.pdf page

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

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

12

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

pdfimages my-file.pdf prefix 
7
VitoshKa

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

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

3
user3080602

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

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

2
Arjun

PDFの特定のページのみをPNGに変換する場合は、次のようにpdftkconvertにパイプできます( 上記の説明 ):

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

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

1
Rush

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

  • PDF ModでPDFファイルを開きます
  • ページを選択-
  • 編集>画像のエクスポート
0
nhylated