upTeX / upLaTeX を使う(2): 日本語フォントの埋め込み
とうとう shannon(僕の Linux マシン……名前であるいは御想像の方がいるかもしれないが、 Dell のマシンなので Shannon と付けた)から Debian が供給している TeX Live 関連パッケージを全廃した。全面的に upTeX / upLaTeX に移行したのだ。前は英語だけ TeX 上で使えればあまり問題なかったのだけど、日本語とギリシャ語を使う必要が生じたので、upTeX / upLaTeX + Babel で処理することにしたわけだ。これでもはや何も問題がないような気になっていたのだけど、やはり気になるのが日本語のフォントである。
今迄、日本語に関しては、おそらくほとんどの方がされているのと同じ扱いをしていた。つまり、日本語以外のフォントは PDF に埋め込むけれど、日本語フォントだけは Adobe の font に任せてしまう、という方法である。まあ、PDF を表示・出力するほとんどの場合で Adobe Reader / Acrobat を使うことになるので、普通ならこれで問題はないわけだ。しかし、僕の場合は Ghostscript を使うケースが多いので、日本語フォントもできれば埋め込んでしまいたい。日本語のフォントで何か印刷に耐えるものを、と考えても、どうもあまりいい方法がない。
こういうことを書くと、「こんなことも知らないのか」という調子で Microsoft のフォントとか Adobe のフォントの埋め込み方を教えようとする人がいそうなので書いておくけれど、方法としてはそんなことはすぐにだってできる。そういうことを安易に他人に教えようとする輩は、Microsoft や Adobe のフォントの権利条項を読んだことがないはずで、両者共に、自社のシステム以外でそれらのフォント使用を許可しない、と明記していることを知らないのだろう。
xtt とかで表示に用いるんだったら、まあ本当はいけないんだけど、どうせこのマシン使うの俺だけだしい……とか言って MS 明朝とかメイリオとかを表示に使っている人が結構いるのだろう。僕は M+ と IPA フォントを合成したものを画面表示に使っている(ちなみに dual boot できる Windows Vista でも画面表示にはこれを使っている)。画面はこれで問題ないのだけど、僕の場合はフォントを埋め込んだ文書を配布する必要が生じることがある。こうなってくると厄介なわけだ。
実は、upTeX / upLaTeX では、日本語のフォント埋め込みは至極簡単にできるようになっている。
とあるのを、たとえば# kanjiEmbed {noEmbed|hiragino|kozuka|morisawa|ipa|etc..}
kanjiEmbed noEmbed
美しい / 美しくない、などという言葉を使うだけで変だと思われそうだけど、TeX / LaTeX を使っている僕の知り合いの間では、少なくとも TeX / LaTeX に関しては、この言葉は重要な評価基準になるのだ。論より証拠、Adobe CID フォントの場合(Morisawa Passport を仕事用に所有している S に確認してもらったところ、このフォントは「小塚明朝 Pro」だとのこと)と、IPA フォントの場合の双方を見比べていただければいい。明らかに前者は後者より「美しい」のだ。ひょっとしたら、IPA の方が美しさに欠けるのは、Σのタタリかもしれないけれどね。はあ。しかし、どうしたものか。
……と悩んでいても仕方がない。あれこれ試してみたが、IPA ex明朝 / exゴシック 辺りなら使えそうなので、
と書き換えて、mktexlsr → updmap-sys としてみる。うまくフォントの埋め込みはできるのだけど、# kanjiEmbed {noEmbed|hiragino|kozuka|morisawa|ipa|etc..}
# kanjiEmbed noEmbed
kanjiEmbed ipa2
というメッセージが……うーん。グリフのエラーということは、フォントにない文字があるのか。どうも困ったものだな……** WARNING ** Glyph missing in font. (CID=138, code=0x0336)
Re:upTeX / upLaTeX を使う(2): 日本語フォントの埋め込み
後記。ここに書かれていることは obsolete です。もし日本語で TeX / LaTeX を使われたい方は、
http://www.fugenji.org/~thomas/texlive-guide/
を御参照下さい。