LaTeX の日本語フォント切り替え

LaTeX、フォント切り替えが簡単にできたら最高ですよね。
日本語組版用のデフォルトはヒラギノに設定しておいて、游明朝や游ゴシックに pxchfon というパッケージで簡単に切り替えていくための備忘録。

前提:環境

このページを編集している現在の環境は、 BasicTeX 2017 @macOS HighSierra です。Sierra と HighSierra のTeX環境はだいぶ違うのでお気をつけください。そして Sierra から安易に HighSierra に乗り換えると LaTeX の設定をいろいろやり直さないといけなくなるのでご注意ください(自戒)。

HighSierra の設定については以前の投稿に書いてあります。 saphir-jaune.hatenablog.com

pxchfonとは

CTAN: Package pxchfon とは、日本語フォントを設定するためのパッケージ。
ウェブサイトに日本語のマニュアル ( http://mirror.hmc.edu/ctan/language/japanese/pxchfon/pxchfon.pdf )があるのでとってもありがたいです。
TeX Live から配信されているので、簡単にインストールできます。

$ sudo tlmgr install pxchfon

私が主に使っているのは、マニュアル5章の「プリセット指定」のあたりです。

このパッケージの元々の意図は、標準のフォントを普段使っているものと全く別の書体に変えることであったが、例えば「普段使う設定が複数ありそれを簡単に切り替えたい」という場合にも有用である。そこで、pTEX において広く行われている設定をパッケージ内に組み込んで、パッケージオプションでそれを呼び出すという機能を追加した。

だそうです。 5.2節の「多ウェイト用の設定」でフォント/OSごとに具体的に書いてあります。

TeX で使う日本語フォントのリンクがある場所

上述の"以前の投稿"の最後の方にちょろっとデフォルトフォントの設定方法をメモってあるのですが、そこでcjk-gs-integrateを使っています。その関係で、日本語フォント用のシンボリックリンクをまとめて保管する場所は、私の場合、

/usr/local/texlive/2017basic/texmf-local/fonts/opentype/cjk-gs-integrate

になっています。

シンボリックリンク云々

$ ln -s [実体ファイルの在処] [そのリンクを置く場所]
  • シンボリックリンクの参照先を調べるには ls -l コマンドで一発です。矢印->の先が実体ファイルです。試しにやって見るとこんな感じです。
$ ls -l
total 0
drwxr-xr-x 35 root wheel 1120  2 25 22:24 .
(略)
lrwxr-xr-x  1 root wheel   62 11 30 17:54 HiraginoSans-W0.ttc -> '/System/Library/Fonts/ヒラギノ角ゴシック W0.ttc'
lrwxr-xr-x  1 root wheel   62 11 30 17:54 HiraginoSans-W1.ttc -> '/System/Library/Fonts/ヒラギノ角ゴシック W1.ttc'
lrwxr-xr-x  1 root wheel   62 11 30 17:54 HiraginoSans-W2.ttc -> '/System/Library/Fonts/ヒラギノ角ゴシック W2.ttc'

もしくは Emacsディレクトリ情報をそのまま開いてもいいですが。それはそれで面倒ですね。

ヒラギノ

上述の"以前の投稿"の最後の方を参照されたし。

とりあえず動いている游ファミリーの設定用文言はこちら。これをプリアンブルに書けば使えます。

\usepackage[noalphabet,unicode]{pxchfon}
\setminchofont{YuMincho.ttc} % 游明朝体 ミディアム
\setgothicfont{YuGo-Medium.otf} % 游ゴシック体 ミディアム
\setboldgothicfont{YuGo-Bold.otf} % 游ゴシック体 ボールド 

游ゴシック

Sierra から乗り換えても 游ゴシックの名前は変わらなかったようで、cjk-gs-integrateで設定したときにとくにいじらなくてもうまく行った記憶があります。

(自分用メモとして一応ls -lの結果を載せておきます)

YuGo-Bold.otf -> /System/Library/Assets/com_apple_MobileAsset_Font4/[ハッシュ値的なもの].asset/AssetData/YuGothic-Bold.otf
YuGo-Medium.otf -> /System/Library/Assets/com_apple_MobileAsset_Font4/[ハッシュ値的なもの].asset/AssetData/YuGothic-Medium.otf

游明朝

以前YuMin-Mediumなどという名前で通っていましたが HighSierra では絶滅してリンクが切れてしまいました。のちのち似たようなことが起きたときのために何をしたかメモしておきます。

  • 游明朝らしきファイルを検索する
    游ゴシックが /System/Library/Assets にあることがわかったので、游明朝もその周辺に引っ越したのではないかと勝手に推測して検索してみますが…ただ、名前がYuMincho.ttcに変更されている上に、1つしかヒットしません。
$ find /System/Library/Assets -name "YuMin*"
Library/Assets/com_apple_MobileAsset_Font4/[ハッシュ値的なもの].asset/AssetData/YuMincho.ttc
  • FontBookで見てみる
    とりあえずFontBook (macOS標準搭載のアプリ) で開いて見てみます。どうやら、デミボールドや"游明朝体 + 36ポかな" などがひとまとめになって入っていたようです。

    f:id:saphir_jaune:20180226001632p:plain
    FontBook で YuMincho.ttc の中身を調べた結果

  • 游明朝ミディアムの設定をする
    明朝体用の設定を\setminchofont{YuMincho.ttc}としたところミディアムはうまく表示されるようになりました。

  • 游明朝ボールドの設定…?
    ボールド体も同じYuMincho.ttcを使うように設定すれば良いのではと思って試してみましたがまだうまくいっていません。

unicode オプション

游ファミリー用の設定用文言の1行目を

\usepackage[noalphabet]{pxchfon}

と書くと、

Character collection mismatched: 
Font: Adobe-Identity-0 
CMap: Adobe-Japan1-1 

dvipdfmx:fatal: Inconsistent CMap specified for this font.

というエラーが出てくるので、オプションにunicodeを入れてあげることで解決しました。

ここを参照させていただきました…!ありがとうございます。 d.hatena.ne.jp