いろりおのメモ帳

気になったりしたことを確認して書いてます

Windowsでxpdf-toolsを使っているときに、「Syntax Error: Unknown character collection 'Adobe-Japan1'」が出たときの対応方法

Windowsのxpdf-toolsでpdffontsやpdftotextを使ったときに、「Syntax Error: Unknown character collection 'Adobe-Japan1'」が出たときの対応方法のメモです。

linuxでの対応方法はググったら出てくるのですがWindows環境だとわかりにくかったのでメモ代わりに記事書いときます。

以下のようなエラーが出たときの対応方法です。

working>pdffonts test.pdf
name                                           type              emb sub uni prob object ID
---------------------------------------------- ----------------- --- --- --- ---- ---------
Syntax Error: Unknown character collection 'Adobe-Japan1'
(略)

手順1: 公式サイトから「language support packages for Xpdf」のjapaneseをダウンロード

  1. 公式サイトのダウンロードページ https://www.xpdfreader.com/download.html にアクセス
  2. 「Download language support packages for Xpdf:」の「Japanese」をクリックし、「xpdf-japanese.tar.gz」をダウンロード
  3. ダウンロードしたファイルを好きな場所に展開
    今回は「C:\tools\xpdf-tools\xpdf-japanese」に展開した
    展開例

手順2: 設定を書き換え

  1. xpdf-toolsなどのインストール先を開く。
  2. 「doc」フォルダの「sample-xpdfrc」ファイルを、バイナリがあるフォルダにコピー。コピーしたファイルを「xpdfrc」にリネーム
    バイナリがあるフォルダにコピー後にリネームした様子
  3. 「xpdfrc」をメモ帳で開く
  4. 手順1で展開したフォルダに含まれる「add-to-xpdfrc」をメモ帳で開く
  5. 「add-to-xpdfrc」の中の「/usr/local/share/xpdf/japanese」をすべて「手順1-3」の保存先に変更。今回は「C:/tools/xpdf-tools/xpdf-japanese」に置換
  6. 「add-to-xpdfrc」の全文をコピーし、「xpdfrc」の最後に貼り付け。保存して閉じる
    パス置換して貼り付け後

これで設定完了です。設定ファイルは勝手に読み込むようになっているようなので、コマンドを再実行してみてください。

補足

  • 保存先の指定は相対パス指定でも大丈夫なのですが、exeとの相対パスでなく、実行フォルダとの相対パスなので扱いにくいです。絶対パス指定のほうが楽だと思います。
  • scoopで「xpdf-tools」を使っていると、アプデ時に「xpdfrc」が引き継がれません。誰か良い対策があれば教えてください……