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ポかな" などがひとまとめになって入っていたようです。游明朝ミディアムの設定をする
明朝体用の設定を\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