漢字を含むpsファイルがgsで表示できない、ps2pdfで文字化けする [プログラム]
Debianで、たとえば、
$ echo '漢字' | nkf -e | LANG=ja_JP.eucJP a2ps --encoding=eucjp -o kanji.ps
として、漢字を含むpsファイルを作ります。これを画面に表示するため、次のコマンドを実行すると、
$ gs -sDEVICE=x11 kanji.ps
(略)
Can't find (or can't open) font file Ryumin-Light-EUC-H.
(略)
というようなエラーがでてきて、どうにも表示できません。
googleで半日ほど、このエラーメッセージなどをキーにあれこれ検索して試してみましたが、そのどれもダメでした。
少し頭を冷やして、これは、もう、根本的な問題ではなかろうかと思って、
debian ghostscript 日本語
で検索をかけたところ、まさに「これだっ!!」というものにヒットしました。
http://lists.debian.or.jp/debian-users/200903/msg00251.html
からFollow-Ups:をいくつかたどって
http://lists.debian.or.jp/debian-users/200903/msg00249.html
のページです。
そのページの内容にあるような2か所の修正をすれば直ります。
そのページの内容を参考に、私が行った修正は、
- なぜか8.63のほうに作られているCMapを、正しいバージョンの8.64のほうへコピーします。
# cp -a /usr/share/ghostscript/8.63/Resource/CMap /usr/share/ghostscript/8.64/Resource - /usr/share/ghostscript/8.64/Resource/Init/cidfmapに以下を追加します。
/SazanamiGothic-Regular << /FileType /TrueType /Path (/usr/share/fonts/truetype/sazanami/sazanami-gothic.ttf) /SubfontID 0 /CSI [(Japan1) 2] >> ;
/SazanamiMincho-Regular << /FileType /TrueType /Path (/usr/share/fonts/truetype/sazanami/sazanami-mincho.ttf) /SubfontID 0 /CSI [(Japan1) 2] >> ;
/VL-Gothic-Regular << /FileType /TrueType /Path (/usr/share/fonts/truetype/vlgothic/VL-Gothic-Regular.ttf) /SubfontID 0 /CSI [(Japan1) 2] >> ;
/GothicBBB-Medium /VL-Gothic-Regular ;
/Ryumin-Light /SazanamiMincho-Regular ;
これで直りました。
2009-05-15 01:53