【 pdfimages 】コマンド――PDFファイルから画像を抽出するLinux基本コマンドTips(287)

本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、PDFファイルから画像を抽出する「pdfimages」コマンドです。

» 2019年03月07日 05時00分 公開
[西村めぐみ@IT]
「Linux基本コマンドTips」のインデックス

Linux基本コマンドTips一覧

 本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、PDFファイルから画像を抽出する「pdfimages」コマンドです。

pdfimagesコマンドとは?

 「pdfimages」はPDFファイルに埋め込まれている画像を抽出するコマンドです。

 なお、PDFファイルからテキストを抽出するには、「pdftotxt」コマンド(連載第286回)を使います。



pdfimagesコマンドの書式

pdfimages [オプション] PDFファイル [出力ファイル名の接頭辞]

※[ ]は省略可能な引数を示しています。





pdfimagesの主なオプション

短いオプション 意味
-f ページ番号 開始ページを指定する
-l ページ番号 終了ページを指定する
-j JPEG形式で出力する
-png PNG形式で出力する
-tiff TIFF形式で出力する
-p 出力ファイル名にページ番号を含める
-list 画像のリストを表示する
-opw パスワード PDFのオーナーパスワードを指定する
-upw パスワード PDFのユーザーパスワードを指定する
-q エラーメッセージを出力しない


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

 「pdfimages PDFファイル 出力ファイル接頭辞」で、PDFファイルから画像を抽出し、保存します(画面1画面2画面3)。

 例えば「pdfimages sample.pdf image」と実行すると、sample.pdfに含まれている画像を「image-000.ppm、image-001.ppm、image-002.ppm……」という名前で保存します。出力する範囲を指定したい場合は、「-f 開始ページ」と「-l 終了ページ」を指定します。

 デフォルトの出力形式はPNM形式です(※1)。「-j」オプションを使うと、JPEG形式で出力します。

※1 PNM(Portable aNyMap、Netpbm形式とも言う)は3種類のデータ形式からなる画像フォーマット。拡張子は「.pbm(モノクロ)」「pgm(グレースケール)」「ppm(フルカラー)」。



コマンド実行例

pdfimages sample.pdf image

(sample.pdfから画像を抽出し、image-連続番号.拡張子という名前のPNM形式で保存する)(画面1

pdfimages -j sample.pdf image

(sample.pdfから画像を抽出し、image-連続番号.jpgという名前のJPEG形式で保存する)


画面1 画面1 PDFファイルから画像を抽出したところ
画面2 画面2 PDFファイルの例 Webページ(https://ja.wikipedia.org/wiki/Portable_Document_Format)を「wkhtmltopdf」コマンドでPDF化したもの)
画面3 画面3 画面2から抽出した画像の例


PDFファイルに含まれている画像を確認する

 「-list」オプションを使うと、PDFファイルに含まれている画像の情報を一覧表示できます(画面4)。

 画面4にある「smask」は、「画像マスク」という意味です。PDFファイルではimageとsmaskを組み合わせた状態で表示されています。

コマンド実行例

pdfimages -list sample.pdf

(PDFファイルに含まれている画像の情報を一覧表示する)


画面4 画面4 PDFファイルに含まれている画像の情報を一覧表示したところ 1ページ目、14ページ目、16ページ目に画像があることが分かる


筆者紹介

西村 めぐみ(にしむら めぐみ)

PC-9801NからのDOSユーザー。PC-486DX時代にDOS版UNIX-like toolsを経てLinuxへ。1992年より生産管理のパッケージソフトウェアの開発およびサポート業務を担当。著書に『図解でわかるLinux』『らぶらぶLinuxシリーズ』『Accessではじめるデータベース超入門[改訂2版]』『macOSコマンド入門』など。2011年より、地方自治体の在宅就業支援事業にてPC基礎およびMicrosoft Office関連の教材作成およびeラーニング指導を担当。


Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。