PDFファイルから画像を抽出する方法


49

現在FoxitのPDFリーダーを使用しており、最近インターネットから画像をダウンロードしましたが、PDFファイル内にあります。この画像を抽出するにはどうすればよいですか?

オペレーティングシステムはWindows 7です。


最高品質の抽出は、pdf内に画像が既に保存されている形式に抽出することです。(少なくとも、それがimages-in-pdfの動作方法だと思います。)
quack quixote

回答:


4

画像の元のピクセル解像度を必要としない場合の簡単な方法は、ALTキーとPrint Screenボタンを押すだけです。次に、画像が必要な場所に貼り付けを選択します。

解像度を維持するもう1つの方法は、Adobe Photoshopなどの画像編集プログラムでPDFを開き、そこで作業することです。


1
PhotoshopでPDFドキュメントを開くと、「汎用PDF形式のラスタライズ」ダイアログが表示されるため、解像度を維持できません。PS7でテスト済み。Photoshopの新しいバージョンは異なりますか?
AffineMesh

1
あなたが言ったように、[alt] + [prnscr]は元のピクセル解像度を保持しません(現在のスクリーン/モニターが使用する解像度を使用します)。
カートPfeifle

1
@ studiohack、@ UserSuUserDo:[alt] + [prnscr]を使用すると元の解像度が失われるだけでなく、完全なPDFビューアウィンドウが画像として表示されます。これは、多くのユースケースにとって「十分」です。ただし、PDFページにのみ埋め込まれているグラフィックが必要な場合があります。ここpdfimages.exeが便利です。
カートPfeifle

1
または、W7に組み込まれているスニッピングツールを使用して、必要な領域をキャプチャします。
モアブ

70

XPDF for Windows(こちら)をダウンロードすると、内部にいくつかの.exeファイルがあります。「インストール」なしで実行できます。次のpdfimages.exeように使用します。

pdfimages.exe -help

これにより、ヘルプ画面が表示されます。

pdfimages.exe ^
    -j ^
    c:\path\to\your.pdf ^
    c:\path\to\where\you\want\images\prefix\

これにより、すべてのJPEGがprefix-00N.jpgとして、その他のすべての画像がprefix-00N.ppm(Portable PixMap)として抽出されます。

[ ComFreekによる編集:宛先パスの末尾のスラッシュに注意してください。これは、親ディレクトリにすべての画像を抽出したくない場合に重要です。] -
{ KurtPfeifleによる編集: ComFreekのコメントに同意しませんが、残しますそれを読者にテストして、結果自体の違いを見つけます。抽出されたファイルに使用される..\prefix画像名の接頭辞になるように、末尾のスラッシュを使用しない元のパラメータ。}

pdfimages.exe ^
    -j ^
    -f 11 ^
    -l 13 ^
    c:\path\to\your.pdf ^
    c:\path\to\where\you\want\images\prefix\

前と同じですが、画像抽出をページ11( 'f' =最初)から13( 'l' =最後)に制限します。


更新:

一方、私はPopplerのバージョンpdfimagesを好みます-特にこの新しい機能を取得-listしたためです:PDFに含まれる画像とそれらのプロパティの一部をリストする(抽出しない)ためにコマンドラインに追加します。例:

pdfimages -list -f 7 -l 8 ct-magazin-14-2012.pdf

  ページnumタイプ幅高さ色comp bpc enc interpオブジェクトID
  -------------------------------------------------- -------------------
     7 0画像581 838 rgb 3 8 jpeg no 39 0
     7 1画像4 4 RGB 3 8画像なし40 0
     7 2画像314332 rgb 3 8 jpx no 44 0
     7 3画像358430 rgb 3 8 jpx no 45 0
     7 4画像4 4 RGB 3 8画像なし46 0
     7 5画像4 4 RGB 3 8画像番号47 0
     7 6画像4 6 RGB 3 8画像なし48 0
     7 7画像596462 rgb 3 8 jpx no 49 0
     7 8画像4 6 RGB 3 8画像なし50 0
     7 9画像4 4 RGB 3 8画像番号51 0
     7 10画像8 10 RGB 3 8画像番号41 0
     7 11画像6 6 RGB 3 8画像なし42 0
     7 12画像113 27 rgb 3 8 jpx no 43 0
     8 13画像582 839グレー1 8 jpeg no 2080 0
     8 14画像344364グレー1 8 jpx no 2079 0

なお、このバージョンは:再びpdfimagesにPopplerから1(んXPDFから1であるではない?(まだ)この新機能をサポート)、およびバージョンはv0.20.2以降でなければなりません。


1
@harlev:ImageMagickの Google 。何かをに変換できるコマンドラインツールがありますconvert。Linux、Windows、MacOS X、およびあなたが持っているもので利用可能です。あなたにとって最も簡単なユースケース:convert some.ppm some.jpeg
カートPfeifle

3
注:XPDFは、しばらく前に分岐したpopplerライブラリほど積極的に維持されていません。Popplerも提供しpdfimagesており、一部の人々はそれを使用することを好むかもしれません。
MvG

1
@BurhanKhalid:事前に作成されたバイナリはこちらです:sourceforge.net/projects/poppler-win32
カートフェイフル

2
@KurtPfeifle残念ながら、これらにはexeファイルがまったく含まれていません。
クリス14

3
私は、これは古いです知っているが、誰もがあなたがここにそれを得ることがWindowsバイナリを探している場合だけ共有したいと思ったblog.alivate.com.au/poppler-windowsを
Aivan Monceller

8

PDFをInkscapeにインポートして、そこから作業することができます。Inkscapeは一度に1ページしか開きませんが、ページの内容を完全に制御できます。PDFからベクターグラフィックスを簡単に抽出して操作できるようになります。

ただし、PDFからラスターイメージを抽出する場合pdfimages、XPDFの方が簡単です(ただし、SVGファイルから埋め込みイメージを抽出する方法を学習した後でもInkscapeを使用してみてください)。


GIMP(gimp.org)は、PDFをインポートおよび操作できる別のグラフィックデザインツールです。ただし、GIMPの機能がInkscapeの機能とどのように対照的かはわかりません。
coderworks

@coderworks:GIMPは、インポートされたPDFページを特定の解像度にラスタライズします。言い換えれば、「Print Screen」を使用するよりもわずかに優れています。一方、Inkscapeは、元のベクターデータと元のラスターイメージを保持します。
デニルソンサマイア

5

ソフトウェアをインストールせずに、この機能が既に組み込まれているPDF-XChange ViewerPortable Versionを選択)に切り替えることができます。

  • すべてまたは選択したページを画像としてエクスポートします
  • 出力形式:PNG、JPG、TIFF、BMP
  • DPI、圧縮レベル、グレースケールを選択します
  • 複数ページをマルチページTIFFとして保存できます

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

    ここに画像の説明を入力してください
    拡大するにはクリックしてください


この方法はPDFページ全体を画像に変換しますが、@ LaurenzからSumatra PDFを使用して説明した方法は、コンテンツ(画像+テキスト)が混在するPDFページから画像を抽出して画像のみを取得する場合に優れています。


2
@MarkSeemannフォローできません。「ソフトウェアをインストールせずに」とは、このコンテキストでは、ポータブルバージョンが利用可能であることを意味します。ポータブルソフトウェアは、定義ごとに「インストール」できませんでした。あなたはただそれをダウンロードし、抽出して起動します。
nixda

3
「DPIを選択する」必要があるという事実は、目的に反します。ラスターイメージ(ピクセルの配列)のサイズを変更しています。ラスターイメージのサイズを変更すると、品質と情報が失われます。
アンソニー

PPMファイルをpngまたはjpegに変換しますか?
キケネット

4

Sumatra PDFは高速で軽量のオープンソースPDFリーダーで、再ラスタライズせずに画像をクリップボードに直接コピーできます。


3

MuPDFは、AGPLライセンスの下でリリースされた新しい(2006年に作成された)マルチプラットフォーム(デスクトップおよびモバイル)PDFビューアーです。Ghostscriptの同じ人々によって維持されています。

PDFから画像を抽出するコマンドラインツールが含まれています。

mutool extract [options] file.pdf [object numbers]

extractコマンドを使用して、PDFから画像とフォントファイルを抽出できます。コマンドラインでオブジェクト番号が指定されていない場合、すべての画像とフォントが抽出されます。

-p password
       Use the specified password if the file is encrypted.

-r     Convert images to RGB when extracting them.

2

pdftocairoから使用しpoppler toolkitます。PDFの画像を抽出し、任意の形式に変換できます。常に画像を生成し、ppmやそのようながらくたは生成しません。次のコマンドは、pdfページをjpgイメージに変換します。

pdftocairo.exe -jpeg "my.pdf" "my"

Windowsの場合は、こちらから入手できます:http : //blog.alivate.com.au/poppler-windows/

Linuxでも利用可能です。


このコマンドは、PDFに埋め込まれた画像を抽出しません(OPが尋ねたとおり)。代わりに、完全なPDFページを画像形式に変換します。この回答は、尋ねられた質問に適合しません。
カートファイフル

1

http://www.sumnotes.net/は、メモ、ハイライト、画像を抽出するオンラインツールです。私は論文のために大学で広く使用し、本当に満足しました。


無料試用が制限されたコマーシャル。また、オンラインであるため、プライバシーを保証できません!
アンソニー

-1

通常、ネイティブ解像度の「pdfimages」で埋め込み画像を抽出し、ImageMagickの必要な形式への変換を使用します。

$ pdfimages -list fileName.pdf
$ pdfimages fileName.pdf fileName   # save in .ppm format
$ convert fileName-000.ppm fileName-000.png

これにより、最良かつ最小の結果ファイルが生成されます。

注:非可逆JPG埋め込み画像の場合、-jを使用する必要がありました。

$ pdfimages -j fileName.pdf fileName   # save in .jpg format

ほとんど提供されていないWinプラットフォームでは、次のURLから最新(2015年7月7日)の「poppler-util」バイナリをダウンロードする必要がありました:http ://blog.alivate.com.au/poppler-windows/

更新: 最近の "poppler-util" 0.50+(2016)では、pdfuniteにオプションの "-all"があり、ロスレス圧縮ビットマップを.pngとして、ロッシー圧縮ビットマップを.jpgとして抽出します。

$ pdfimages -all fileName.pdf fileName

PDFから可能な限り最高の品質のコンテンツを常に抽出する


以前はカート・ファイフルの答えにあった。
ダニエル。ノイマン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.