2014年、Adobe Systems は Google と共同で、「源ノ角ゴシック」(Source Han Sans)フォントを開発、公開しました。このフォントはオープンソースで、日本語・韓国語・中国簡体字・中国繁体字のグリフを可能な限り収録しており、欧米文字に関しても Source Sans ファミリーの内容を収録しています。日本語の漢字に関しては Adobe-Japan1-6 の内容を完全収録しており、Web フォント・デスクトップフォントとしての使用を念頭に開発されたと謳われていますが、印刷に供しても十分な品質のフォントです。
そして2017年、「源ノ明朝」(Source Han Serif)フォントが公開されました。高品質なゴシックと明朝、しかも各々7ウェイトづつが公開されたことで、その有用性は極めて大きいものになりました。
源ノ角ゴシック/源ノ明朝フォントの開発は、Adobe と Google の共同開発として行われたわけですが、この成果は Google 側からもリリースされています。それが Noto font の CJK サブセットとして公開されている Noto Sans CJK / Noto Serif CJK フォントです。Noto というのは Google によると "no more tofu" の略とのことです。tofu = 豆腐、というのは、グリフがないときに表示される "□" のことですね。要するに「表示できない文字がない状態を目指す」という意志を表明した名前です。
これらのフォントを TeX Live で使いたい……当然、そういう風に皆さん考えられると思います。ではまずはシステムにインストールを、となるところですが、ちょっと待って下さい。これらのフォントはなにせ新しいものですので、まずはその公開形態から見ておく必要があります。
たとえば源ノ角ゴシックフォントを入手しようとした場合、まずはGitHub で公開されているレポジトリに行くことになるわけですが、ここの clone を取得してもそのままでは使えません。ここでメインで公開されているのはあくまでフォントのソースファイルで、これを使えるかたちにするためには、Adobe が公開している Adobe Font Development Kit for OpenType (AFDKO) をセットアップした上でフォントを自力で生成することが必要になります。
生成済のフォントファイルも公開されているので、まずはそちらを入手するのが早道です。先の GitHub のページの下の方に行くと "Download the fonts (OTF, OTC, Super OTC, Subset OTF)" という項目があります。その直下の "Latest release" と書かれているところをクリックすると "Downloading Source Han Sans" というページに飛びます。
公開されている形態は、
尚、実際にシステムにインストールされる場合は、束ねられていない OTF 版が一番安全だろうと思われます。重複するフォントを複数形態でインストールしても、認識されるのは最初に読まれたものだけですので、システムに重複インストールしても余り意味はありません。
Noto fonts は、https://www.google.com/get/noto/ で公開されていますが、CJK に関しては https://www.google.com/get/noto/help/cjk/ からの方が取り易いと思います。具体的に取得する必要があるのは、"OpenType/CFF Collection (OTC)" から、
僕のシステムには、以下のようなかたちでインストールされています。
1. には、Source Hans Sans と Source Hans Serif の OTF 版、それらのサブセット OTF 版のうち、JP(日本語), KR(朝鮮語), SC(中国簡体字)の全ウェイトを入れています。2. には 1. と同様の内容になるように OTC フォントが入れてあります。
3. には、Noto Sans と Noto Serif のサブセット OTF 版のうち、CJKjp(日本語), CJKkr(朝鮮語), CJKsc(中国簡体字)の全ウェイト、あと Noto Sans Mono に関しても3言語分を入れています。4. には 、Noto Sans と Noto Serif の OTC フォントが入れてあります。
sans と sans serif を混ぜて1か所に入れるのはアレなんですが、インストールしていてあ゛〜っっ、となって、こうしてしまいました。ちなみに、OTC 版に関しては上述の通り混在させない方が本当は良いです。
システムへのフォントファイルの配置中は、可能であればコンソールモードで作業する方が安全です。配置が終わったら、
でフォントキャッシュを更新しておきましょう。$ sudo fc-cache -vfr
TeX Live には、以下のようなかたちでインストールされています。
では、こうやってインストールしたフォントを実際に使ってみましょう。LuaTeX では truetype/opentype フォントを直接指定して文書を組むことができますので、まずは LuaTeX-ja を使って以下のような文書を書いてみます。
LuaTeX-ja の luatexja-preset.sty では、フォントセットに noto-otc, noto-otf, sourcehan, sourcehan-jp が収録されています。ここでは sourcehan-jp を指定して、lualatex で処理すると、以下のような出力を得ます。\documentclass[a4paper]{ltjsarticle} \usepackage{luatexja} \usepackage[no-math]{luatexja-fontspec} \usepackage[sourcehan-jp]{luatexja-preset} \begin{document} 明朝体で書き始め、\textbf{太字}を経て\textgt{ゴシック}に至る。 \end{document}
luatexja-preset.sty では、\textbf{} としてゴシック体が指定されているようです。これは昔から慣習的に行われていることではあるのですが、bf = bold face ということを考えるとどうなのでしょう。強調したいところを明朝のまま太字にしても、目を引きにくいような気もしますから……悩ましいところです。その辺りを細かく制御したい場合は、フォントを直接指定して書くこともできます。
これを lualatex で処理すると、以下のような出力を得ます。\documentclass[a4paper]{ltjsarticle} \usepackage{luatexja} \usepackage[no-math]{luatexja-fontspec} \setmainfont{texgyretermes-regular} \setsansfont{texgyreheros-regular} \setmainjfont[BoldFont=SourceHanSerifJP-Bold.otf]{SourceHanSerifJP-Regular.otf} \setsansjfont[BoldFont=SourceHanSansJP-Bold.otf]{SourceHanSansJP-Regular.otf} \begin{document} 明朝体で書き始め、\textbf{太字}を経て\textgt{ゴシック}に至る。 \end{document}
pLaTeX や upLaTeX で源ノ角ゴシック / 源ノ明朝 / Noto Sans CJK / Noto Serif CJK フォントを使いたい場合は、現行の TeX Live に収録されている dvipdfmx と PXchfon パッケージを併用することで利用できます。
PXchfon パッケージは、pLaTeX / upLaTeX の標準フォントを文書中で指定したフォントに置換する機能を提供しています。上述のようにフォントをインストールしてあれば、TeX Live に収録されている PXchfon パッケージをそのまま使うことができます。
pLaTeX の場合、
upLaTeX の場合、\documentclass[a4paper]{jsarticle} \usepackage[sourcehan]{pxchfon} \begin{document} 明朝体で書き始め、\textbf{太字}を経て\textgt{ゴシック}に至る。 \end{document}
のように作成した文書から DVI ファイルを生成、dvipdfmx に読ませることで、上の LuaTeX を使用した例と同様の、\documentclass[uplatex,a4paper]{jsarticle} \usepackage[sourcehan]{pxchfon} \begin{document} 明朝体で書き始め、\textbf{太字}を経て\textgt{ゴシック}に至る。 \end{document}
先の『フリーフォントを活用するために』のような、OTF パッケージを併用したフォントの使い分けは可能なのでしょうか。
このような文書を作成しました。ひとつだけ注意しなければならないのはプリアンブルにおける OTF と PXchfon の順序です。OTF を先にしないとエラーが出るので注意しましょう。これを platex と dvipdfmx で処理した結果は……\documentclass[a4paper]{jsarticle} \usepackage[expert, deluxe]{otf} \usepackage[sourcehan]{pxchfon} \begin{document} \noindent {\usekanji{JY1}{hmc}{l}{n} \Huge 漢字仮名交じり文の例:細明朝} \noindent {\usekanji{JY1}{hmc}{m}{n} \Huge 漢字仮名交じり文の例:明朝} \noindent {\usekanji{JY1}{hmc}{bx}{n} \Huge 漢字仮名交じり文の例:太明朝} \noindent {\usekanji{JY1}{hgt}{m}{n} \Huge 漢字仮名交じり文の例:ゴシック} \noindent {\usekanji{JY1}{hgt}{bx}{n} \Huge 漢字仮名交じり文の例:太ゴシック} \noindent {\usekanji{JY1}{hgt}{eb}{n} \Huge 漢字仮名交じり文の例:極太ゴシック} \noindent {\usekanji{JY1}{mg}{m}{n} \Huge 漢字仮名交じり文の例:丸ゴシック} \end{document}