フリーソフトPopplerのpdfinfoコマンドを利用するとPDFの各種情報を取得することが出来ます。

PopplerとはPDFビューア(XpdfReader)やPDF解析・変換ツールのフリーソフトです。PopplerはXpdf(フリーソフト)をベースとして機能を拡張して提供されています。
ソースコードも提供されているライブラリとなります。コマンドライン実行のため、VBAや他プログラムからも利用可能となります。
| コマンド |
|---|
| pdfinfo [options] <PDF-file> |
| オプション | |
|---|---|
| 指定なし | PDFの情報を表示されます |
| -box | オプションなし時の情報に加え、印刷範囲等の情報が表示されます |
| -meta | PDF内のメタデータを表示します |
| -custom | PDFファイルの作成者、作成日時などのメタ情報を表示します |
| -js | PDF内のJavaScriptを表示します |
| -struct | タグ付きPDFファイルの論理文書構造を表示します |
| -struct-text | タグ付きPDFファイルの論理文書構造とテキスト内容を表示します |
| -isodates | 日時表示箇所をISO-8601フォーマットで表示します |
| -rawdates | PDF内に格納されている日時を加工(デコード)せずにそのまま表示します |
| -url | PDF内のURLを一覧表示します |
| -listenc | 利用可能なエンコーディングを表示します |
| -enc <string> | 表示する文字コードを指定します |
| -f <int> | 解析を行うPDFの開始ページを指定します |
| -l <int> | 解析を行うPDFの終了ページを指定します |
| -opw <string> | オーナーパスワード設定されている場合にパスワードを指定します |
| -upw <string> | ユーザーパスワード設定されている場合にパスワードを指定します |
| -v | バージョンとコピーライトを表示します |
| -h | コマンドの使用方法を表示します |
>pdfinfo Sample_info.pdf Title: pdfinfo_Test_PDF Author: PdfTestUser Creator: Microsoft® Word for Microsoft 365 Producer: Microsoft® Word for Microsoft 365 CreationDate: Fri Aug 29 13:37:45 2025 (W) ModDate: Fri Aug 29 13:44:11 2025 (W) Custom Metadata: no Metadata Stream: yes Tagged: yes UserProperties: no Suspects: no Form: AcroForm JavaScript: yes Pages: 1 Encrypted: no Page size: 595.32 x 841.92 pts (A4) Page rot: 0 File size: 313745 bytes Optimized: no PDF version: 1.7 >
オプションなし時の情報に加え、印刷範囲等の情報が表示されます
>pdfinfo -box Sample_info.pdf Title: pdfinfo_Test_PDF Author: PdfTestUser Creator: Microsoft® Word for Microsoft 365 Producer: Microsoft® Word for Microsoft 365 CreationDate: Fri Aug 29 13:37:45 2025 (W) ModDate: Fri Aug 29 13:44:11 2025 (W) Custom Metadata: no Metadata Stream: yes Tagged: yes UserProperties: no Suspects: no Form: AcroForm JavaScript: yes Pages: 1 Encrypted: no Page size: 595.32 x 841.92 pts (A4) Page rot: 0 MediaBox: 0.00 0.00 595.32 841.92 CropBox: 0.00 0.00 595.32 841.92 BleedBox: 0.00 0.00 595.32 841.92 TrimBox: 0.00 0.00 595.32 841.92 ArtBox: 0.00 0.00 595.32 841.92 File size: 313745 bytes Optimized: no PDF version: 1.7 >
| -box の見方 | ||
|---|---|---|
| MediaBox | 印刷される物理サイズ(余白を含まないサイズ) | |
| CropBox | 表示する領域のサイズ デフォルト:MediaBox |
|
| BleedBox | 裁ち切りとして仕上げる領域を除くサイズ デフォルト:CropBox |
|
| TrimBox | 製造時の仕上がりサイズ デフォルト:CropBox |
|
| ArtBox | コンテンツ領域のサイズ デフォルト:CropBox |
|
>pdfinfo -meta Sample_info.pdf <?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?><x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="3.1-701"> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:pdf="http://ns.adobe.com/pdf/1.3/"> <pdf:Producer>Microsoft® Word for Microsoft 365</pdf:Producer></rdf:Description> <rdf:Description rdf:about="" xmlns:dc="http://purl.org/dc/elements/1.1/"> </rdf:Description> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/"> <xmp:CreatorTool>Microsoft® Word for Microsoft 365</xmp:CreatorTool><xmp:CreateDate>2025-08-29T13:37:45+09:00</xmp:CreateDate><xmp:ModifyDate>2025-08-29T13:37:45+09:00</xmp:ModifyDate></rdf:Description> <rdf:Description rdf:about="" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/"> <xmpMM:DocumentID>uuid:D1C556AE-2A50-4974-86A6-86673C66B9CF</xmpMM:DocumentID><xmpMM:InstanceID>uuid:D1C556AE-2A50-4974-86A6-86673C66B9CF</xmpMM:InstanceID></rdf:Description> </rdf:RDF></x:xmpmeta><?xpacket end="w"?> >
PDFファイルの作成者、作成日時などのメタ情報を表示します。
>pdfinfo -custom Sample_info.pdf Author: PdfTestUser CreationDate: Fri Aug 29 13:37:45 2025 (W) Creator: Microsoft® Word for Microsoft 365 ModDate: Fri Aug 29 13:44:11 2025 (W) Producer: Microsoft® Word for Microsoft 365 Title: pdfinfo_Test_PDF >
>pdfinfo -js Sample_info.pdf
Field Modified:
AFDate_KeystrokeEx("yyyy/m/d");
Format Field:
AFDate_FormatEx("yyyy/m/d");
>
タグ付きPDF以外の場合は表示されません。
>pdfinfo -struct Sample_info.pdf
Document
P (block)
P (block)
Link (inline)
Object 14 0
Span (inline)
L (block):
/ListNumbering /Decimal
LI (block)
Lbl (block)
LBody (block)
Span (inline)
LI (block)
Lbl (block)
LBody (block)
Span (inline)
LI (block)
Lbl (block)
LBody (block)
P (block)
P (block)
Span (inline)
>
タグ付きPDF以外の場合は表示されません。
>pdfinfo -struct-text Sample_info.pdf
Document
P (block)
"サンプル"
"PDF"
P (block)
Link (inline)
Object 14 0
Span (inline)
"https://"
"note."
"cman.jp/"
L (block):
/ListNumbering /Decimal
LI (block)
Lbl (block)
"1."
"サンプル内容"
LBody (block)
Span (inline)
"pdfinfo"
"のオプション表示用にタグ埋め込み"
"PDF"
"としています。"
LI (block)
Lbl (block)
"2."
"PDF"
"作成ソフト"
LBody (block)
Span (inline)
"WORD"
"で"
"PDF"
"化した後に"
"JUST PDF 6 Pro"
"を使用して編集を追加しています。"
LI (block)
Lbl (block)
"3."
"注意事項"
LBody (block)
"サンプルのためフォームなどは入れていますが、実行されるマクロ("
"JavaScript"
")等は含まれておりません。"
P (block)
"以下はフォーム確認用に入れています。"
P (block)
Span (inline)
" "
>
>pdfinfo -isodates Sample_info.pdf Title: pdfinfo_Test_PDF Author: PdfTestUser Creator: Microsoft® Word for Microsoft 365 Producer: Microsoft® Word for Microsoft 365 CreationDate: 2025-08-29T13:37:45+09 ModDate: 2025-08-29T13:44:11+09 Custom Metadata: no Metadata Stream: yes Tagged: yes UserProperties: no Suspects: no Form: AcroForm JavaScript: yes Pages: 1 Encrypted: no Page size: 595.32 x 841.92 pts (A4) Page rot: 0 File size: 313745 bytes Optimized: no PDF version: 1.7 >
>pdfinfo -rawdates Sample_info.pdf Title: pdfinfo_Test_PDF Author: PdfTestUser Creator: Microsoft® Word for Microsoft 365 Producer: Microsoft® Word for Microsoft 365 CreationDate: D:20250829133745+09'00' ModDate: D:20250829134411+09'00' Custom Metadata: no Metadata Stream: yes Tagged: yes UserProperties: no Suspects: no Form: AcroForm JavaScript: yes Pages: 1 Encrypted: no Page size: 595.32 x 841.92 pts (A4) Page rot: 0 File size: 313745 bytes Optimized: no PDF version: 1.7 >
テキストコンテンツは対象としないとの記載もあり詳細は分かっていません。
>pdfinfo -url Sample_info.pdf Page Type URL 1 Annotation https://note.cman.jp/ >
>pdfinfo -listenc Sample_info.pdf Available encodings are: . .. ASCII7 Big5 Big5ascii EUC-CN EUC-JP GBK ISO-2022-CN ISO-2022-JP ISO-2022-KR ISO-8859-6 ISO-8859-7 ISO-8859-8 ISO-8859-9 KOI8-R Latin1 Latin2 Shift-JIS Symbol TIS-620 UTF-16 UTF-8 Windows-1255 ZapfDingbats >
共通的に使用されるコマンドオプション「-f」「-l」「-enc」「-opw」「-upw」「-v」「-h」等のオプションは こちら でご確認ください。
| 1 | Sample_info.pdf | 上記実行例で使用したPDF | 307KB |
|---|---|---|---|
| 上記ファイルにはマクロ等は含まれていません。 | |||
Windows版を使用しています。
pdfinfo version 24.08.0 Copyright 2005-2024 The Poppler Developers - http://poppler.freedesktop.org Copyright 1996-2011, 2022 Glyph & Cog, LLC Usage: pdfinfo [options] <PDF-file> -f <int> : first page to convert -l <int> : last page to convert -box : print the page bounding boxes -meta : print the document metadata (XML) -custom : print both custom and standard metadata -js : print all JavaScript in the PDF -struct : print the logical document structure (for tagged files) -struct-text : print text contents along with document structure (for tagged files) -isodates : print the dates in ISO-8601 format -rawdates : print the undecoded date strings directly from the PDF file -dests : print all named destinations in the PDF -url : print all URLs inside PDF objects (does not scan text content) -enc <string> : output text encoding name -listenc : list available encodings -opw <string> : owner password (for encrypted files) -upw <string> : user password (for encrypted files) -v : print copyright and version info -h : print usage information -help : print usage information --help : print usage information -? : print usage information
| 主な機能 | 概要 |
|---|---|
| pdfattach | PDFファイルに添付ファイルを埋め込みします |
| pdfdetach | PDF内に添付(埋め込み)されているファイルの一覧表示や抽出を行います |
| pdffonts | PDFファイルで使用されているフォントやフォントの埋め込み有無を調べる |
| pdfimages | PDFファイルで使用(埋め込み)されている画像を抽出する |
| pdfseparate | PDFファイルを1ページごとに分割する |
| pdftocairo | PDFファイルを画像に変換する(Cairoベクターグラフィックスを使用) |
| pdftohtml | PDFをHTML形式に変換する |
| pdftoppm | PDFファイルを画像に変換する |
| pdftops | PDFファイルをPostScriptファイルに変換する |
| pdftotext | PDFファイルからテキストを抽出する |
| pdfunite | 複数のPDFファイルをページ結合する |