PDFドキュメントでのフォントに少し問題があります。問題を特定するために、PDFドキュメントに実際に埋め込まれているフォントと参照されているフォントを確認します。それをする簡単な(そして無料のように安い)方法はありますか?
実際にフォントが埋め込まれているように見えるサンプルファイルを手に入れました。
通常のAdobe Reader(または必要に応じてFoxit)を使用します。結果のダイアログで「ファイル」->「プロパティ」を選択し、「フォント」タブを選択します。フォントのリストが表示されます。埋め込まれているものは、フォント名の後ろに()でこの事実を示します。
pdffonts
コマンドラインツールはもともと Xpdf でしたが、現在は Poppler の一部です。
このツールは、ほとんどのLinuxディストリビューションでpoppler-utils
パッケージの一部として利用できます。
使用例と出力:
$ pdffonts some.pdf
name type emb sub uni object ID
------------------------------------ ----------------- --- --- --- ---------
BAAAAA+Arial-Black TrueType yes yes yes 53 0
CAAAAA+Tahoma TrueType yes yes yes 28 0
DAAAAA+Wingdings-Regular TrueType yes yes yes 43 0
EAAAAA+Webdings TrueType yes yes yes 38 0
FAAAAA+Arial-BoldMT TrueType yes yes yes 33 0
GAAAAA+Tahoma-Bold TrueType yes yes yes 23 0
HAAAAA+OpenSymbol TrueType yes yes yes 48 0
フォント名を知りたいだけならもっと簡単:これを端末から実行する
strings yourPDFfilepath.pdf | grep FontName
CAM :: PDF にはフォントレポーターがあり、コマンドラインユーティリティとして、またはライブラリ呼び出しを介して利用できます。 「listfont.pl file.pdf」を実行すると、次のような出力が得られます。
Page 1:
Name: F1.0
Type: TrueType
BaseFont: NZUXSR+Impact
Encoding: MacRomanEncoding
Widths: yes
Characters: 0-255
Embedded: yes
Name: F2.0
Type: TrueType
BaseFont: XSFKRA+ArialMT
Encoding: MacRomanEncoding
Widths: yes
Characters: 0-255
Embedded: yes
PDFを使用して Online Font Converter からフォントを抽出できます。
無料のiText(または.NETを使用している場合はiTextSharp)を使用すると、BaseFont.GetDocumentFontsメソッドを使用してこの情報を抽出するユーティリティを作成できます。
コードについて このリンク を読む