質問: WEBSOM(自己組織化マップ)というプログラムでpostscriptのマッピング画像を出力したのですが、日本語でエントリーしていた単語が文字化けして表示されます。 postscriptをテキストエディタから開いて見たのですが、日本語表示の制御はどのようにしたらよいのでしょうか? ソースへのリンクを貼ります。 ソース 文字コードを指定している Helveticaをゴシックに置換したんですが、文字化けが漢字に変換されただけでした。
回答: 残念ながら、困難ではないかと推測します。 これだけの情報だと情報不足で推測しかできないのですが、 まず、一般的に、epsファイルを画面に表示するのに一番簡単なのは、MacOS X で 当該ファイルを開いてみる( ダブルクリックしてみる ) 方法だと思います。PostScriptファイルを画面に出す最強の方法です。これで出ないなら、おそらく正しく出ません。 そして、PostScriptを出力するプログラムで、実際の文字の部分で使っている実際のエンコーディングと、フォントのエンコーディングが合致しておらず、漢字などを出そうとすると、表示がこんな感じになりえると思います。 PostScriptで日本語の文字が正しく表示されるようにするには、PostScriptのコードが、表示のために埋め込まれた文字列のエンコーディングを用いるように書かれていないと、正しく表示されません。つまり、正しくエンコーディングを意識して、設定し、かつ、指定したエンコーディングで文字列を書き出さないといけないのです。 実際、示されているサンプルは、フォントを選んでいる部分は Alpha-numeric な Helvetica を選んでますし、表示するコードに思える部分はありますが、現状Helveticaです。フォントの選び方から見て、エンコーディングについては、何も考えずにASCII文字用にかかれているようです。UTF-8とのことですから、適切にCIDフォントを選んでCMapを間に挟んで書き出すようなパッチを書けば動作すると思いますが、それなりに手間がかかると思います。