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 では、日本語のフォント埋め込みは至極簡単にできるようになっている。/usr/local/teTeX/share/texmf/web2c/updmap.cfgで、

# kanjiEmbed {noEmbed|hiragino|kozuka|morisawa|ipa|etc..}
kanjiEmbed noEmbed
とあるのを、たとえばkanjiEmbed ipaと書き換えて、mktexlsr → updmap-sys とでもやればいいだけだ。これで、dvipdfmx で PDF を生成すると IPA 明朝と IPA ゴシックが埋め込ませるようになる。しかし……実際に埋め込んでみると、やはり、美しくない。

美しい / 美しくない、などという言葉を使うだけで変だと思われそうだけど、TeX / LaTeX を使っている僕の知り合いの間では、少なくとも TeX / LaTeX に関しては、この言葉は重要な評価基準になるのだ。論より証拠、Adobe CID フォントの場合(Morisawa Passport を仕事用に所有している S に確認してもらったところ、このフォントは「小塚明朝 Pro」だとのこと)と、IPA フォントの場合の双方を見比べていただければいい。明らかに前者は後者より「美しい」のだ。ひょっとしたら、IPA の方が美しさに欠けるのは、Σのタタリかもしれないけれどね。はあ。しかし、どうしたものか。

……と悩んでいても仕方がない。あれこれ試してみたが、IPA ex明朝 / exゴシック 辺りなら使えそうなので、/usr/local/teTeX/share/texmf/fonts/map/dvipdfm/内の ptex-ipa.map と utf-ipa.map を基に、IPA ex明朝 / exゴシックフォントを参照するように書き換えた map ファイルを ptex-ipa2.map と utf-ipa2.map という名前で作成し、/usr/local/teTeX/share/texmf/web2c/updmap.cfgを、

# kanjiEmbed {noEmbed|hiragino|kozuka|morisawa|ipa|etc..}
# kanjiEmbed noEmbed
kanjiEmbed ipa2
と書き換えて、mktexlsr → updmap-sys としてみる。うまくフォントの埋め込みはできるのだけど、
** WARNING ** Glyph missing in font. (CID=138, code=0x0336)
というメッセージが……うーん。グリフのエラーということは、フォントにない文字があるのか。どうも困ったものだな……

2010/04/22(Thu) 16:43:39 | コンピュータ&インターネット

Re:upTeX / upLaTeX を使う(2): 日本語フォントの埋め込み

後記。ここに書かれていることは obsolete です。
もし日本語で TeX / LaTeX を使われたい方は、
http://www.fugenji.org/~thomas/texlive-guide/
を御参照下さい。
Thomas(2011/10/02(Sun) 13:12:31)
Tittle: Name:

Profile

T.T.Ueda
Tamotsu Thomas UEDA

茨城県水戸市生まれ。

横山大観がかつて学んだ小学校から、旧水戸城址にある中学、高校と進学。この頃から音楽を趣味とするようになる。大学は、学部→修士→博士の各課程に在籍し、某省傘下の研究所に就職、その2ヵ月後に学位を授与される(こういう経緯ですが最終学歴は博士課程「修了」です)。職場の隣の小学校で起こった惨劇は未だに心に深く傷を残している。

その後某自動車関連会社の研究法人で国の研究プロジェクトに参画、プロジェクト終了後は数年の彷徨を経て、某所で教育関連業務に従事。

New Entries

Comment

Categories

Archives(896)

Link

Search

Free

e-mail address:
e-mail address