モリサワのサブスクリプションサービスであるMORISAWA FontsをLaTeXで使う方法を記述する。
MORISAWA Fontsはモリサワのあらゆるフォントを利用可能なサブスクリプションサービスである。年6万円ほどする代物であるが、学生であれば年990円で利用可能である!
普通にLaTeXで文書を作った場合、日本語フォントには源ノ明朝・源ノ角ゴシックというフォントのバリアント(原ノ味明朝・原ノ味ゴシック)が使われる。これを他のフォントに変えてみたいという需要は当然存在するだろう。例えば、21世紀以降の商業出版物の本文明朝体にはリュウミンがやたら使われている印象があるが、リュウミンはMORISAWA Fontsに含まれるので、自身が作るLaTeXの文書にリュウミンを使う、といったことが可能である。
具体的な方法であるが、これはエンジンがLuaLaTeXであるか(u)pLaTeXであるかによって方法が異なる。なお、個人的にはLuaLaTeXの使用を推奨する。(u)pLaTeX等はそもそもOpenTypeフォントとのかみ合わせが良くない。
また、以下ではWindows環境を前提する。MacOS等の場合は各自あれこれ試みられたい。
なお、言うまでもないが、あらかじめ使いたいフォントをMorisawa Desktop Managerを使ってアクティベートしておくこと。
LuaLaTeXの場合
LuaLaTeXにて日本語フォントを指定する場合、基本的にluatexja-fontspecパッケージを用いる。これの使い方は以前記したので再論しない。以下ではluatexja-fontspecの基本的な使い方に関する知識は前提する(なお、luatexja-presetを用いるとしても事情はさほど変わらない。適宜読み替えられたい)。
luatexja-fontspecにおいては次のようにしてフォントを指定する。
\setmainjfont[SOME OPTIONS...]{FONT NAME} \setsansjfont[SOME OPTIONS...]{FONT NAME} \setmonojfont[SOME OPTIONS...]{FONT NAME}
太字フォント等はBoldFont=等のオプションで指定する。この際、FONT NAMEにて所望のフォントのPostScript名を使って指定することができる。
MORISAWA FontsでアクティベートされたフォントのPostScript名は、Morisawa Desktop Managerにて取得することができる。

以上の赤枠で囲ってある部分がアクティベートされたフォントのPostScript名である(残念ながらコピペはできない)。これをそのままフォント名として指定する。
例えば、以下から分かる通り「リュウミン Pr6N L-KL」のPostScript名はRyuminPr6N-Lightである。

本文にて「リュウミン Pr6N L-KL」を使いたい場合、次のように指定する。
% \usepackage{luatexja-fontspec} % in preamble \setmainjfont{RyuminPr6N-Light}
太字フォント設定等のオプションも事情は同じである。
なお、LuaLaTeXの場合は上記のようにPostScript名で指定する以外にも、luaotfloadが認識するフォント名やフォントファイル名で指定するといった方法も用いることができる。そこら辺は柔軟に対応されたい。
(u)pLaTeXの場合
(u)pLaTeXのフォント機構はもはや複雑怪奇すぎて理解するのを諦めているけれども、これらのエンジンにて任意のOpenType日本語フォントを使用する方法は二つあるようである。第一に事前にフォント名とフォントファイルそのものとの結びつきをあらかじめmapファイルで指定しておく方法、第二にdvipdfmxに渡すspecialオプションを介して文書中にて設定する方法である。ここでは後者の方法を応用したパッケージであるpxchfonパッケージの使用を前提する。なおこのパッケージの使い方は以下を参照されたい。
pxchfonのコマンドでフォント名を指定する場合は、PostScript名で指定することはできず、必ずフォントファイル名で指定する必要がある。
MORISAWA Fontsに含まれるフォントのフォントファイル名は、以下のページから確認できる。。
ここに添付されている.xlsxファイルをダウンロードすれば、フォントの一覧が見られる。このJ列にフォントファイル名があるので、これを用いて指定する。
例えば、このファイルの中から(2025年2月版の場合)1枚目のシートの14行目にある「A-OTF リュウミン Pr6N L-KL」の行を見てみると、J列にA-OTF-RyuminPr6N-Light.otfというふうにファイル名が記してあるのがわかる*1。pxchfonのコマンドでフォントを指定する際には、この名前を使うことになる。
例:
% \usepackage[noalphabet]{pxchfon} % in preamble \setminchofont{A-OTF-RyuminPr6N-Light.otf}
うまくいかない場合は
上述の方法でうまくいかない場合、いくつかの原因が考えられる
- Morisawa Desktop Managerが古い→最近フォントの取り扱いが変更になったようで、古いバージョンだとうまくいかないことがあるかもしれない。新しいバージョンにアップデートされたい(手元ではVer. 2.3.0でうまく動作している)。
- そもそもMorisawa Desktop Managerにてフォントのアクティベートに成功していない→うまくアクティベートされたい
- ((u)pLaTeXの場合)kpathseaが更新されていない→
mktexlsrを(しばしば管理者権限付きで)実行されたい - (LuaLaTeXの場合)luaotfloadのデータベースが更新されていない→
luaotfload-tool -uを実行されたい - (LuaLaTeXの場合)PostScript名で指定してもうまくいかない→PostScript名ではなく、
luaotfload-tool --list=*として表示されるリストの中から探し、その名前で指定されたい。 - 指定する際のフォント名がタイプミス等により間違っている→ただしく修正されたい
それ以外の場合はあまりわからないが、色々と試されたい。おそらくLuaLaTeXのほうがうまく行きやすいとは思う。
おわりに
以上がMORISAWA FontsのフォントをLaTeX文書にて使う方法である。せっかく学生は990円で利用できるサービスなのに、使わないのはあまりにももったいない。
*1:P付きのバージョンと混同しないこと。