dvipdfmx

dvi を日本語 pdf に変換するコマンド.Adobe Reader から日本語文字列を検索,選択できるような pdf を生成できる.

インストール

Gentoo Linux AMD64 の場合

# ACCEPT_KEYWORDS="-~amd64" emerge ptex dvipdfmx
# vi /usr/share/texmf/web2c/texmf.cnf
#CMAPINPUTS = .;/opt/Acrobat5/Resource/Font//;/usr/share/xpdf//
CMAPINPUTS = .;/usr/share/ghostscript/Resource/CMap//

テスト版 (~amd64) の ptex はインストールに失敗したため,安定版 (amd64) をインストールした.ptex との整合性のため dvipdfmx も安定版である.
また,dvipdfmx より先に ptex を emerge する必要がある.dvipdfmx は ptex か tetex に依存しており,どちらも入っていない場合は tetex を入れようとする.しかし,tetex の場合,min10.tfm などのフォントがインストールされないのでまずい.
最後に,Ghostscript の日本語フォントを使用するように設定している.(もしかしたら,acroread か xpdf がインストールされていれば設定の変更は不要かもしれない.)
導入に成功したバージョンは app-text/ptex-3.1.5, app-text/dvipdfmx-20040411 である.

トラブルシューティング(紆余曲折の記録)

emerge ptex の前に emerge dvipdfmx で失敗
** ERROR ** Unable to find TFM file "min10".

ptex の代わりに tetex が導入されるが,min10.tfm などのフォントがないため,dvipdfmx コマンドの実行に失敗する.

テスト版の ptex はインストールに失敗
--------------------------- ACCESS VIOLATION SUMMARY ---------------------------
LOG FILE = "/tmp/sandbox-app-text_-_ptex-3.1.8.1_p20050418-21936.log"

mkdir:     /var/cache/fonts/lsR10042.tmp
--------------------------------------------------------------------------------

失敗する原因は分からなかった.ACCEPT_KEYWORDS="-~amd64" を付加して安定版を導入すれば回避できる.導入に失敗した ptex のバージョンは app-text/ptex-3.1.8.1_p20050418, app-text/ptex-3.1.8.1.

ptex と dvipdfmx のバージョンの整合性
** WARNING ** Couldn't open the font map file "cid-x.map".

安定版の dvipdfmx の最新版 app-text/dvipdfmx-20040411 を導入して解決(テスト版の最新版は app-text/dvipdfmx-20050201).どうも,そのあたりの時期で TDS (TeX Directory Structure) が変わったという事情があるらしい.
WARNING なので pdf は生成されるが,生成された pdf を Adobe Reader で読むと日本語の部分が欠けており,

Adobe Reader
文書を読み取り中に問題が発生しました(110)。

などのエラーメッセージが表示される.

CMap のパス
** ERROR ** Could not find encoding file "H".

フォント (CMap) が見つからなかったことに起因するエラーらしい.dvipdfmx 導入時に ghostscript も導入されるはずなので,ghostscript のフォントのパスを加えればよい.デフォルトで acroread や xpdf のフォントへのパスが通っているように見えるので,これらがインストールされていれば設定を変更する必要がないかもしれない.

# vi /usr/share/texmf/web2c/texmf.cnf
#CMAPINPUTS = .;/opt/Acrobat5/Resource/Font//;/usr/share/xpdf//
CMAPINPUTS = .;/usr/share/ghostscript/Resource/CMap//

以上の紆余曲折を経て,正常にインストール,実行できることを確認した.