Web便利ノート
cman.jp cman.jp > Web便利ノート > PDF > 解析・変換 > 画像取り出し
広告
広告
広告

pdfimages - PDF内の画像情報や取り出し

フリーソフトPopplerのpdfimagesコマンドを利用するとPDFファイル内で使用されている画像の情報表示や画像の取り出しをすることが出来ます。

pdfattach

広告

pdfimages の詳細

PopplerとはPDFビューア(XpdfReader)やPDF解析・変換ツールのフリーソフトです。PopplerはXpdf(フリーソフト)をベースとして機能を拡張して提供されています。
ソースコードも提供されているライブラリとなります。コマンドライン実行のため、VBAや他プログラムからも利用可能となります。

コマンド
pdfimages [options] <PDF-file> <image-root>
オプション
-png 取り出した画像をPNG形式で保存
-tiff 取り出した画像をTIFF形式で保存
-j PDF内にJPEG形式で保存されている場合はJPEG形式のまま取り出す
-jp2 PDF内にJPEG2000形式で保存されている場合はJPEG2000形式のまま取り出す
-jbig2 PDF内にJBIG2形式で保存されている場合はJBIG2形式のまま取り出す
-ccitt PDF内にCCITT形式で保存されている場合はCCITT形式のまま取り出す
-all PDF内に画像形式が格納されている場合は、格納の画像形式で取り出しする。
その他はPNG形式となる。ただし、CMYK形式の場合はTIFF形式となる。
-list 画像の保存内容を一覧表示する
-p 画像保存時に画像が含まれるページをファイル名に付加する
-q コマンド実行時のエラーを表示しない
-f <int> 解析を行うPDFの開始ページ
-l <int> 解析を行うPDFの終了ページ
-opw <string> オーナーパスワード設定されている場合にパスワードを指定する
-upw <string> ユーザーパスワード設定されている場合にパスワードを指定する
-v バージョンとコピーライトを表示する
-h コマンドの使用方法を表示する
ページTOP
広告
ページTOP

pdffonts 実行例

「-png」 PDF内の画像をPNG形式で取り出す

>pdfimages -png Sample_image_zip_all.pdf ./png/

>dir png
   116,918 -000.png
       511 -001.png
       578 -002.png
   125,560 -003.png
   275,335 -004.png
       473 -005.png
       576 -006.png
       494 -007.png
       744 -008.png
       725 -009.png
       740 -010.png
       741 -011.png
       732 -012.png

ページTOP

「-tiff」 PDF内の画像をTIFF形式で取り出す

>pdfimages -tiff Sample_image_zip_all.pdf ./tiff/

>dir tiff
   595,404 -000.tif
   120,108 -001.tif
   142,398 -002.tif
   222,798 -003.tif
   720,804 -004.tif
   114,330 -005.tif
   224,148 -006.tif
   100,158 -007.tif
   124,692 -008.tif
   280,974 -009.tif
   281,140 -010.tif
   281,140 -011.tif
   281,140 -012.tif

ページTOP

「-j」 PDF内の画像をJPEG形式で取り出す

(注)JPEG形式以外で保存されている画像はPPM形式で取り出される。

>pdfimages -j Sample_image_zip_all.pdf ./jpeg/

>dir jpeg
    18,068 -000.jpg
   119,823 -001.ppm
   142,095 -002.ppm
    15,009 -003.jpg
    30,673 -004.jpg
   114,051 -005.ppm
   223,773 -006.ppm
    99,891 -007.ppm
   124,407 -008.ppm
   280,575 -009.ppm
   280,734 -010.ppm
   280,734 -011.ppm
   280,734 -012.ppm

ページTOP

「-all」 PDF内の画像を自動判定で取り出す

PDF内に形式指定されている画像は指定形式の画像で取り出しする。
その他はPNG形式となる。ただし、CMYK形式の場合はTIFF形式となる。

「-all」は以下のオプションと同じとなる。
pdfimages -png -tiff -j -jp2 -jbig2 -ccitt PdfFile.pdf ImageOutDir

>pdfimages -all Sample_image_zip_all.pdf ./all/

>dir all
    18,068 -000.jpg
       511 -001.png
       578 -002.png
    15,009 -003.jpg
    30,673 -004.jpg
       473 -005.png
       576 -006.png
       494 -007.png
       744 -008.png
       725 -009.png
       740 -010.png
       741 -011.png
       732 -012.png

ページTOP

「-list」 PDF内に保存されている画像の一覧表示

>pdfimages -list Sample_image_zip_all.pdf
page   num  type   width height color comp bpc  enc interp  object ID x-ppi y-ppi size ratio
--------------------------------------------------------------------------------------------
   1     0 image     991   200  rgb     3   8  jpeg   no        84  0   300   300 17.6K 3.0%
   1     1 image     256   156  index   1   8  image  no        85  0   258   600  282B 0.7%
   1     2 image     256   185  index   1   8  image  no        87  0   158   600  328B 0.7%
   1     3 image     220   337  rgb     3   8  jpeg   no        89  0    78    78 14.7K 6.7%
   1     4 image     600   400  rgb     3   8  jpeg   no        90  0   154   154 30.0K 4.3%
   2     5 image     221   172  index   1   8  image  no         9  0   300   300  120B 0.3%
   2     6 image     401   186  index   1   8  image  no        11  0   300   300  423B 0.6%
   2     7 image     287   116  index   1   8  image  no        13  0   300   300  295B 0.9%
   2     8 image     292   142  index   1   8  image  no        15  0   300   300  498B 1.2%
   3     9 image     334   280  index   1   8  image  no        50  0   300   300  587B 0.6%
   3    10 image     333   281  index   1   8  image  no        52  0   300   300  589B 0.6%
   3    11 image     333   281  index   1   8  image  no        54  0   300   300  590B 0.6%
   3    12 image     333   281  index   1   8  image  no        56  0   300   300  589B 0.6%
>
-list の見方
page 画像が格納されているページ番号
num 画像の通し番号
type 画像の種類
image 不透明な画像
mask モノクロのマスク画像
smask ソフトマスク画像
stencil 色やパターンを描画するためのモノクロのマスク画像
width 埋め込みされた画像の幅(単位:px)
height 埋め込みされた画像の高さ(単位:px)
color 使用する画像空間
gray Gray
rgb RGB(RGBとCMYKの違いはこちら
cmyk CMYK(RGBとCMYKの違いはこちら
lab L*a*b
icc ICC Based
index Indexed Color(使用されている色のテーブル)
sep Separation
devn DeviceN
comp 色成分の番号
bpc コンポーネントあたりのビット数
enc 画像のエンコーディング
image ラスター画像(ビットマップ画像)
jpeg JPEG画像
jp2 JPEG2000画像
jbig2 Joint Bi-Level Image Experts Group
ccitt CCITT Group 3 or Group 4 Fax
interp 「YES」は画像を拡大するときに補間を実行する
object ID PDF内の画像オブジェクトID
x-ppi 画像の水平解像度(ピクセル/インチ)
y-ppi 画像の垂直解像度(ピクセル/インチ)
size 画像のファイルサイズ
ratio 画像の圧縮率
ページTOP

「-p」 取り出す画像ファイルにページ番号を付加する

>pdfimages -p Sample_image_zip_all.pdf ./page/

>

>dir page
    594,615 -001-000.ppm
    119,823 -001-001.ppm
    142,095 -001-002.ppm
    222,435 -001-003.ppm
    720,015 -001-004.ppm
    114,051 -002-005.ppm
    223,773 -002-006.ppm
     99,891 -002-007.ppm
    124,407 -002-008.ppm
    280,575 -003-009.ppm
    280,734 -003-010.ppm
    280,734 -003-011.ppm
    280,734 -003-012.ppm
>
ページTOP

コマンド共通オプション

共通的に使用されるコマンドオプション「-f」「-l」「-opw」「-upw」「-v」「-h」等のオプションは こちら でご確認ください。

ページTOP

実行例で使用したファイル

1 Sample_image_zip_all.pdf 画像が埋め込みされたPDF 218KB
2 all.zip 「-all」で取り出した画像(ZIP形式) 65KB
上記ファイルにはマクロ等は含まれていません。
ページTOP

PDFに画像を埋め込むときの注意事項

同じ自画像でも画像圧縮形式や解像度などにより見た目やファイルサイズが異なります。

▼上記実行例で使用したPDFを解像度100dpiで保存したときの画像情報

page   num  type   width height color comp bpc  enc interp  object ID x-ppi y-ppi size ratio
--------------------------------------------------------------------------------------------
   1     0 image     248    50  rgb     3   8  jpeg   no        76  0    75    75 3993B  11%
   1     1 image      75    20  rgb     3   8  image  no        77  0    76    77  104B 2.3%
   1     2 image     122    24  rgb     3   8  image  no        78  0    75    78  137B 1.6%
   1     3 image     212   325  rgb     3   8  jpeg   no        79  0    75    75 13.0K 6.5%
   1     4 image     292   195  rgb     3   8  jpeg   no        80  0    75    75 9310B 5.5%
   2     5 image      56    43  rgb     3   8  image  no         9  0    76    75   29B 0.4%
   2     6 image     101    47  rgb     3   8  image  no        10  0    76    76  107B 0.8%
   2     7 image      72    29  rgb     3   8  image  no        11  0    75    75  117B 1.9%
   2     8 image      73    36  rgb     3   8  image  no        12  0    75    76  152B 1.9%
   3     9 image      84    70  rgb     3   8  image  no        46  0    75    75  103B 0.6%
   3    10 image      84    71  rgb     3   8  image  no        47  0    76    76  111B 0.6%
   3    11 image      84    71  rgb     3   8  image  no        48  0    76    76  106B 0.6%
   3    12 image      84    71  rgb     3   8  image  no        49  0    76    76  110B 0.6%
ページTOP
広告

使用したバージョンなど

Windows版を使用しています。

pdfimages version 24.08.0
Copyright 2005-2024 The Poppler Developers - http://poppler.freedesktop.org
Copyright 1996-2011, 2022 Glyph & Cog, LLC
Usage: pdfimages [options] <PDF-file> <image-root>
  -f <int>                 : first page to convert
  -l <int>                 : last page to convert
  -png                     : change the default output format to PNG
  -tiff                    : change the default output format to TIFF
  -j                       : write JPEG images as JPEG files
  -jp2                     : write JPEG2000 images as JP2 files
  -jbig2                   : write JBIG2 images as JBIG2 files
  -ccitt                   : write CCITT images as CCITT files
  -all                     : equivalent to -png -tiff -j -jp2 -jbig2 -ccitt
  -list                    : print list of images instead of saving
  -opw <string>            : owner password (for encrypted files)
  -upw <string>            : user password (for encrypted files)
  -p                       : include page numbers in output file names
  -print-filenames         : print image filenames to stdout
  -q                       : don't print any messages or errors
  -v                       : print copyright and version info
  -h                       : print usage information
  -help                    : print usage information
  --help                   : print usage information
  -?                       : print usage information
ページTOP

その他のPopplerツール機能

主な機能 概要
pdfattach PDFファイルに添付ファイルを埋め込みします
pdfdetach PDF内に添付(埋め込み)されているファイルの一覧表示や抽出を行います
pdffonts PDFファイルで使用されているフォントやフォントの埋め込み有無を調べる
pdfinfo PDFファイルの情報(作成者、作成日時、ページ数など)を表示する
pdfseparate PDFファイルを1ページごとに分割する
pdftocairo PDFファイルを画像に変換する(Cairoベクターグラフィックスを使用)
pdftohtml PDFをHTML形式に変換する
pdftoppm PDFファイルを画像に変換する
pdftops PDFファイルをPostScriptファイルに変換する
pdftotext PDFファイルからテキストを抽出する
pdfunite 複数のPDFファイルをページ結合する
ページTOP
広告
QrCode
このページのURL
スマートフォン・タブレット運営:株式会社シーマン