フリーソフトPopplerのpdffontsコマンドを利用するとPDFファイル内で使用されているフォント種類やフォントの埋め込み有無を確認することが出来ます。

PopplerとはPDFビューア(XpdfReader)やPDF解析・変換ツールのフリーソフトです。PopplerはXpdf(フリーソフト)をベースとして機能を拡張して提供されています。
ソースコードも提供されているライブラリとなります。コマンドライン実行のため、VBAや他プログラムからも利用可能となります。
| コマンド |
|---|
| pdffonts [options] <PDF-file> |
| オプション | |
|---|---|
| -subst | フォントが埋め込まれていない場合の代替フォントを表示 (PopplerのPDFビューア(XpdfReader)利用時の代替文字?) |
| -f <int> | 解析を行うPDFの開始ページ |
| -l <int> | 解析を行うPDFの終了ページ |
| -opw <string> | オーナーパスワード設定されている場合にパスワードを指定する |
| -upw <string> | ユーザーパスワード設定されている場合にパスワードを指定する |
| -v | バージョンとコピーライトを表示する |
| -h | コマンドの使用方法を表示する |
| 表示される意味 | |
|---|---|
| name | フォント名(PDF内に指定されているフォント名) |
| type | フォントのタイプ |
| encoding | フォントのエンコーディングのタイプ |
| emb | フォントの埋め込み有無 「yes」はフォントが埋め込まれている |
| sub | サブセット化の有無 「yes」は文書内で使用されている文字のみ埋め込み |
| uni | ユニコードマップの有無 「yes」はユニコードCMapあり(PDF中の文字をUnicode変換するテーブル) |
| object ID | PDF内のフォントオブジェクトID |
▼フォントが埋め込みされているPDF
>pdffonts Sample_font_all.pdf name type encoding emb sub uni object ID ------------------------- -------------- ------------- --- --- --- --------- GGEMJF+MeiryoUI CID TrueType Identity-H yes yes yes 90 0 SDLOXI+M+1cblack CID TrueType Identity-H yes yes yes 45 0 JNYGAI+游明朝Regular CID TrueType Identity-H yes yes yes 31 0 UOJDMX+M+1plight CID TrueType Identity-H yes yes yes 5 0 TNVPQX+游ゴシックLight CID TrueType Identity-H yes yes yes 10 0 ULAJUT+MSPゴシック CID TrueType Identity-H yes yes yes 15 0 POETRK+MSP明朝 CID TrueType Identity-H yes yes yes 20 0 JRUTTF+MS明朝 CID TrueType Identity-H yes yes yes 25 0 GOSGRI+Arial TrueType WinAnsi yes yes no 70 0 XJMEUT+ArialBlack TrueType WinAnsi yes yes no 34 0 HBVHMY+M+1mnbold CID TrueType Identity-H yes yes yes 38 0 KKDGFL+MSゴシック CID TrueType Identity-H yes yes yes 73 0 SNDWST+M+1mbold CID TrueType Identity-H yes yes yes 48 0 EQOCDD+ARPゴシック体S CID TrueType Identity-H yes yes yes 67 0 >
▼フォントが埋め込みされていないPDF
>pdffonts Sample_font_none.pdf Syntax Error: No display font for 'Symbol' Syntax Error: No display font for 'ArialUnicode' Syntax Error: Couldn't find a font for 'M+1mbold', subst is 'MS-Mincho' Syntax Error: Couldn't find a font for 'M+1cblack', subst is 'MS-Mincho' Syntax Error: Couldn't find a font for '<9f><96> <92> Regular', subst is 'MS-Mincho' Syntax Error: Couldn't find a font for 'M+1plight', subst is 'MS-Mincho' Syntax Error: Couldn't find a font for '<9f> <83>S<83>V<83>b<83>NLight', subst is 'MS-Mincho' Syntax Error: Couldn't find a font for '<82>l<82>r<82>o<83>S<83>V<83>b<83>N', subst is 'MS-Mincho' Syntax Error: Couldn't find a font for '<82>l<82>r<82>o<96> <92> ', subst is 'MS-Mincho' Syntax Error: Couldn't find a font for '<82>l<82>r<96> <92> ', subst is 'MS-Mincho' Syntax Error: Couldn't find a font for 'M+1mnbold', subst is 'MS-Mincho' Syntax Error: Couldn't find a font for '<82>l<82>r<83>S<83>V<83>b<83>N', subst is 'MS-Mincho' Syntax Error: Couldn't find a font for 'ARP<83>S<83>V<83>b<83>N<91> S', subst is 'MS-Mincho' name type encoding emb sub uni object ID ------------------------- -------------- --------------- --- --- --- --------- MeiryoUI CID TrueType 90msp-RKSJ-H no no no 66 0 MeiryoUI CID TrueType UniJIS-UCS2-H no no no 69 0 M+1mbold CID TrueType 90msp-RKSJ-H no no no 31 0 M+1cblack CID TrueType 90msp-RKSJ-H no no no 22 0 游明朝Regular CID TrueType 90msp-RKSJ-H no no no 4 0 M+1plight CID TrueType 90msp-RKSJ-H no no no 7 0 游ゴシックLight CID TrueType 90msp-RKSJ-H no no no 10 0 MSPゴシック CID TrueType 90msp-RKSJ-H no no no 13 0 MSP明朝 CID TrueType 90msp-RKSJ-H no no no 16 0 MS明朝 CID TrueType 90msp-RKSJ-H no no no 19 0 Arial TrueType WinAnsi no no no 49 0 ArialBlack TrueType WinAnsi no no no 25 0 M+1mnbold CID TrueType 90msp-RKSJ-H no no no 28 0 MSゴシック CID TrueType 90msp-RKSJ-H no no no 52 0 ARPゴシック体S CID TrueType 90msp-RKSJ-H no no no 46 0 >
▼フォントをアウトライン化(図形化)したPDF
>pdffonts Sample_font_outline.pdf name type encoding emb sub uni object ID ------------------------- -------------- --------------- --- --- --- --------- >
文字(フォント)をアウトライン化(図形化)すると、フォントは埋め込みとはなりません。
ページTOPPopplerコマンドで共通的に使用される「-f」「-l」「-opw」「-upw」「-v」「-h」オプションの使用例は以下をご確認ください。
| 1 | Sample_font_all.pdf | フォント埋め込みPDF | 215KB |
|---|---|---|---|
| 2 | Sample_font_none.pdf | フォント埋め込み無しPDF | 15KB |
| 3 | Sample_font_outline.pdf | フォントをアウトライン化したPDF | 401KB |
| 上記ファイルにはマクロ等は含まれていません。 | |||
同じ文書であっても埋め込みされる形式は異なる場合があります。
▼上記実行例で使用した文書をWORDでPDF化した場合のフォント情報
>pdffonts Sample_PDF_text_WORD.pdf name type encoding emb sub uni object ID -------------------------------- -------------- ------------ --- --- --- --------- BCDEEE+MeiryoUI CID TrueType Identity-H yes yes yes 5 0 BCDFEE+MeiryoUI TrueType WinAnsi yes yes no 12 0 BCDGEE+MS-PGothic TrueType WinAnsi yes yes no 16 0 BCDHEE+MS-PGothic CID TrueType Identity-H yes yes yes 18 0 BCDIEE+MS-PMincho TrueType WinAnsi yes yes no 23 0 BCDJEE+MS-PMincho CID TrueType Identity-H yes yes yes 25 0 BCDKEE+MS-Mincho TrueType WinAnsi yes yes no 30 0 BCDLEE+MS-Mincho CID TrueType Identity-H yes yes yes 32 0 BCDMEE+ArialMT CID TrueType Identity-H yes yes yes 37 0 BCDNEE+ArialMT TrueType WinAnsi yes yes no 42 0 BCDOEE+Arial-Black CID TrueType Identity-H yes yes yes 44 0 BCDPEE+Arial-Black TrueType WinAnsi yes yes no 49 0 BCEAEE+mplus-1mn-bold TrueType WinAnsi yes yes no 51 0 BCEBEE+MS-Gothic TrueType WinAnsi yes yes no 53 0 BCECEE+mplus-1m-bold TrueType WinAnsi yes yes no 55 0 BCEDEE+mplus-1m-bold CID TrueType Identity-H yes yes yes 57 0 BCEEEE+MS-Gothic CID TrueType Identity-H yes yes yes 62 0 BCEFEE+mplus-1c-black CID TrueType Identity-H yes yes yes 67 0 BCEGEE+YuMincho-Regular TrueType WinAnsi yes yes no 72 0 BCEHEE+mplus-1p-light CID TrueType Identity-H yes yes yes 74 0 BCEIEE+mplus-1c-black TrueType WinAnsi yes yes no 79 0 BCEJEE+YuGothic-Light TrueType WinAnsi yes yes no 81 0 BCEKEE+HeitiEGP4-SuperBold-SJIS TrueType WinAnsi yes yes no 91 0
Windows版を使用しています。
pdffonts version 24.08.0 Copyright 2005-2024 The Poppler Developers - http://poppler.freedesktop.org Copyright 1996-2011, 2022 Glyph & Cog, LLC Usage: pdffonts [options] <PDF-file> -f <int> : first page to examine -l <int> : last page to examine -subst : show font substitutions -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内に添付(埋め込み)されているファイルの一覧表示や抽出を行います |
| pdfimages | PDFファイルで使用(埋め込み)されている画像を抽出する |
| pdfinfo | PDFファイルの情報(作成者、作成日時、ページ数など)を表示する |
| pdfseparate | PDFファイルを1ページごとに分割する |
| pdftocairo | PDFファイルを画像に変換する(Cairoベクターグラフィックスを使用) |
| pdftohtml | PDFをHTML形式に変換する |
| pdftoppm | PDFファイルを画像に変換する |
| pdftops | PDFファイルをPostScriptファイルに変換する |
| pdftotext | PDFファイルからテキストを抽出する |
| pdfunite | 複数のPDFファイルをページ結合する |