読者です 読者をやめる 読者になる 読者になる

TeX Alchemist Online

TeX を使って化学のお仕事をしています。

Sierra 時代の TeX Live 環境

フォント TeX

f:id:doraTeX:20161202171615p:plain

この記事は TeX & LaTeX Advent Calendar 2016 の2日目の記事です。 1日目はzr_tex8rさんでした。 3日目はhak7a3さんです。

本記事では,9月にリリースされた macOS Sierra (10.12) について,El Capitan (10.11) からの変更点,および Sierra の和文フォントを TeX Live で最大限活用する方法について解説します。

目次

Sierra の和文フォントたち,および El Capitan からの変更点

昨年の記事 TeX界の El Capitan 迎撃戦記 で述べたように,Yosemite (10.10) → El Capitan (10.11) においては,特に和文フォントまわりで大きな変更があり,TeX界はその対応に追われました。それに対し,今年の El Capitan (10.11) → Sierra (10.12) においては,そこまで大きな変更はありませんでしたので,その対応は昨年に比べて小規模で済みました。

Sierra における和文フォントまわりの状況は以下の通りです。

ヒラギノフォント

f:id:doraTeX:20161202170408p:plain

El Capitan において,ゴシックの収録ウェイトが激増するとともに,フォントの形式が Open Type Collection (OTC) 形式(拡張子は .ttc)に変更になりました。Sierra においては,フォントの数・形式・収録場所に変化はありませんでした。

クレー,筑紫A/B丸ゴシック

f:id:doraTeX:20161202170502p:plain

El Capitan において追加になったOTC形式(.ttc)のフォントです。 Sierra においては,フォント自体に変更はありませんでしたが,収録場所が変更となりました。 El Capitan では /Library/Fonts/ に収録されていたものが,Sierra では /System/Library/Assets/ 以下の奥深い場所に移動になりました。

游ゴシック体

f:id:doraTeX:20161202170521p:plain

Mavericks (10.9) において追加になった,Adobe-Japan1-6 にフル対応の OpenType フォントです。 ミディアム・ボールドのウェイトごとのOTFファイルとして収録されています。 Mavericks (10.9) ~ El Capitan (10.11) では /Library/Fonts/ に収録されていたものが,Sierra では /System/Library/Assets/ 以下の奥深い場所に移動になりました。

游明朝体

f:id:doraTeX:20161202170541p:plain

游明朝体は,Mavericks (10.9) から標準添付が始まりました。Yosemite (10.10) までは游明朝体ミディアム・ボールドの2つのみで,それぞれ別々のOTFファイルであったものが,El Capitan では「游明朝体+36ポかな」のミディアム・ボールドも追加収録され,4フォントを束ねるOTC形式にまとめられました。 この際,ROS (Registry, Ordering, Supplement) は Adobe-Japan1-6 から Adobe-Identity-0 に変更となりました。

Sierra では,游明朝体・游明朝体+36ポかなそれぞれのエクストラボールドも追加収録されて,6フォントを束ねるOTC形式となりました。(その結果,dvipdfmx から呼び出す際の TTC index がずれることになりました。) また,収録場所も /Library/Fonts/ から /System/Library/Assets/ 以下の奥深い場所に変更となりました。

游教科書体

f:id:doraTeX:20161202170558p:plain

Sierra において新規に標準添付となったフォントです。游教科書体のミディアム・ボールドに加え,かな部分に横組専用グリフを収録した「游教科書体 横用」のミディアム・ボールドも含めて,全4フォントを束ねたOTC形式のフォントとなています。収録場所は /System/Library/Assets/ 以下の奥深い場所です。

凸版文久フォント

f:id:doraTeX:20161202170614p:plain

Sierra において新規に標準添付となったフォントです。収録場所は /System/Library/Assets/ 以下の奥深い場所となっています。

和文フォント一覧表

このように,和文フォントの状況はいささか複雑なので,以下に一覧表としてまとめてあります。

Sierra (10.12) の和文フォント一覧表

docs.google.com

参考:El Capitan (10.11) の和文フォント一覧表

docs.google.com

TeX Live 2016 での対応状況

Ghostscript はOTC形式のフォントに対応していませんので,Sierra 付属の和文フォントを TeX Live から十分に活用するには,(u)pTeX + dvipdfmx か,または LuaTeX-ja を使うことになるでしょう。

dvipdfmx で Sierra のヒラギノフォントを埋め込む

ヒラギノフォントについては,幸い El Capitan から Sierra で変更はありませんでした。よって,最新の TeX Live 環境では, 今年6月の記事 MacTeX 2016 のインストール&日本語環境構築法 (El Capitan 以前/以後両対応) の通り,

$ sudo cjk-gs-integrate --link-texmf --force

で TEXMFLOCAL 内にヒラギノフォントへのシンボリックリンクを作り(必要に応じて mktexlsr も実行),

$ sudo kanji-config-updmap-sys hiragino-elcapitan-pron

でヒラギノフォントを埋め込むよう dvipdfmx のフォントマップの設定を行えばよいです。

doratex.hatenablog.jp

その他の和文フォント

ヒラギノフォント以外の和文フォントは,/System/Library/Assets/ 以下の奥深い場所に移動になりました。*1 それらを TeX Live から参照できるようにするため,/System/Library/Assets/ 以下のディレクトリを再帰検索して,フォントファイルへのシンボリックリンクを作成しておく必要があります。また,Yu Gothic Medium.otf のようなスペース入りファイル名については,dvipdfmx から使えるようにするため,適宜別名でシンボリックリンクを作成する必要があります。

そこで,20161026.0版の cjk-gs-integrate において,Sierra に対応するための改修が加えられました。よって,

$ sudo tlmgr update --self --all

がなされた最新の TeX Live 2016 であれば,

$ sudo cjk-gs-integrate --link-texmf --force

とすることによって,TEXMFLOCAL 内に,次のようなシンボリックリンクが作成されます(和文フォントのみ抜粋):

TEXMFLOCAL/fonts/truetype/cjk-gs-integrate/ 内

  • HiraginoSans-W0.ttc/System/Library/Fonts/ヒラギノ角ゴシック W0.ttc
  • HiraginoSans-W1.ttc/System/Library/Fonts/ヒラギノ角ゴシック W1.ttc
  • HiraginoSans-W2.ttc/System/Library/Fonts/ヒラギノ角ゴシック W2.ttc
  • HiraginoSans-W3.ttc/System/Library/Fonts/ヒラギノ角ゴシック W3.ttc
  • HiraginoSans-W4.ttc/System/Library/Fonts/ヒラギノ角ゴシック W4.ttc
  • HiraginoSans-W5.ttc/System/Library/Fonts/ヒラギノ角ゴシック W5.ttc
  • HiraginoSans-W6.ttc/System/Library/Fonts/ヒラギノ角ゴシック W6.ttc
  • HiraginoSans-W7.ttc/System/Library/Fonts/ヒラギノ角ゴシック W7.ttc
  • HiraginoSans-W8.ttc/System/Library/Fonts/ヒラギノ角ゴシック W8.ttc
  • HiraginoSans-W9.ttc/System/Library/Fonts/ヒラギノ角ゴシック W9.ttc
  • HiraginoSansR-W4.ttc/Library/Fonts/ヒラギノ丸ゴ ProN W4.ttc
  • HiraginoSerif-W3.ttc/System/Library/Fonts/ヒラギノ明朝 ProN W3.ttc
  • HiraginoSerif-W6.ttc/System/Library/Fonts/ヒラギノ明朝 ProN W6.ttc
  • Klee.ttc/System/Library/Assets/(中略)/Klee.ttc
  • Kyokasho.ttc/System/Library/Assets/(中略)/Kyokasho.ttc
  • ToppanBunkyuGothic.ttc/System/Library/(中略)/ToppanBunkyuGothic.ttc
  • TsukushiAMaruGothic.ttc/System/Library/Assets/(中略)/TsukushiAMaruGothic.ttc
  • TsukushiBMaruGothic.ttc/System/Library/Assets/(中略)/TsukushiBMaruGothic.ttc
  • YuMincho.ttc/System/Library/Assets/(中略)/YuMincho.ttc

TEXMFLOCAL/fonts/opentype/cjk-gs-integrate/ 内

  • ToppanBunkyuMidashiGothicStdN-ExtraBold.otf/System/Library/Assets/(中略)/ToppanBunkyuMidashiGothic-ExtraBold.otf
  • ToppanBunkyuMidashiMinchoStdN-ExtraBold.otf/System/Library/Assets/(中略)/ToppanBunkyuMidashiMincho-ExtraBold.otf
  • ToppanBunkyuMinchoPr6N-Regular.otf/System/Library/Assets/(中略)/ToppanBunkyuMincho-Regular.otf
  • YuGo-Bold.otf/System/Library/Assets/(中略)/Yu Gothic Bold.otf
  • YuGo-Medium.otf/System/Library/Assets/(中略)/Yu Gothic Medium.otf

凸版文久フォントで文書作成する

Sierra 標準添付の和文フォントのうち,

  • 硬筆体のクレーや,丸ゴシック体の筑紫A/B丸ゴシックは,明朝・ゴシック系ではないため,通常の文書の本文書体としては使いにくい。
  • 游明朝体・游教科書体は ROS が Adobe-Identity-0 であるため,dvipdfmx から使うには専用の CMap ファイルを用意する必要があり,updmap の仕組み上簡単には使えない。

のに対して,Sierra から新規収録となった凸版文久フォントは,明朝体2ウェイト,ゴシック体3ウェイトが収録されており,通常の文書作成には十分です。また,Adobe-Japan1 対応の通常のOpenTypeフォントなので,UniJIS2004-UTF16-H といった既存の CMap ファイルが使え,updmap の仕組みにも乗せられます。

そこで,20161108.0版の jfontmaps において,Sierra付属の凸版文久フォントで文書作成するためのマップ設定が加えられました。

$ sudo kanji-config-updmap-sys toppanbunkyu-sierra

とすることによって,dvipdfmx で凸版文久フォントを埋め込んだPDF文書作成が可能となります。

ただし,現時点(2016/12/02)では,cjk-gs-integrate と jfontmaps のフォント名の不整合という問題があり,次のような手動対応が必要です。

  1. 凸版文久フォント(OTF形式)へのシンボリックリンクが作られているディレクトリを探す。(kpsewhich ToppanBunkyuMinchoPr6N-Regular.otf で見つかる。)
  2. そのディレクトリで以下のコマンドを実行し,別名のシンボリックリンクを作成。
$ sudo ln -s ToppanBunkyuMinchoPr6N-Regular.otf  ToppanBunkyuMincho-Regular.otf
$ sudo ln -s ToppanBunkyuMidashiMinchoStdN-ExtraBold.otf  ToppanBunkyuMidashiMincho-ExtraBold.otf
$ sudo ln -s ToppanBunkyuMidashiGothicStdN-ExtraBold.otf  ToppanBunkyuMidashiGothic-ExtraBold.otf

現在,開発版では,この不具合解決に向けて取り組んでいます。

凸版文久フォントによる文書作成のサンプル

上記準備を経て,jfontmaps の toppanbunkyu-sierra 設定を適用した状況で,凸版文久フォントを用いた文書作成を行うサンプルは以下の通りです。

%#!uplatex
\documentclass[uplatex]{jsarticle}
\pagestyle{empty}
\usepackage[deluxe,jis2004]{otf}
\usepackage{plext}

\def\test#1#2{{#1\makebox[22zw][l]{#2}あいうー123「葛祇辻鷗」。☃}\par}

\def\testAll{%
\test{\mcfamily\mdseries}{凸版文久明朝 レギュラー}
\test{\mcfamily\bfseries}{凸版文久見出し明朝 エクストラボールド}
\test{\gtfamily\mdseries}{凸版文久ゴシック レギュラー}
\test{\gtfamily\bfseries}{凸版文久ゴシック デミボールド}
\test{\gtfamily\ebseries}{凸版文久見出しゴシック エクストラボールド}
}

\begin{document}
\setlength\parindent{0pt}

\testAll

\vspace{1cm}

\parbox<t>{37zw}{\testAll}

\end{document}

出力結果

f:id:doraTeX:20161202162046p:plain

f:id:doraTeX:20161202162057p:plain

このように,凸版文久フォント一式を埋め込んだ文書が作れました。これを使って,普段とはひと味雰囲気の違う文書を作ってみてはいかがでしょうか。

LuaTeX-ja on TeX Live 2016 における Sierra の和文フォント対応

Mac で LuaTeX-ja を使用した際の和文フォントまわりの状況は,TeX Live 2015 → 2016 で大幅に改善されました。

昨年の記事 TeX界の El Capitan 迎撃戦記 で述べたように,TeX Live 2015 時点では,LuaTeX はOTC形式のフォントに未対応であり,El Capitan で大幅増補された和文フォントを LuaTeX-ja では活用できませんでした。その後,開発チームの皆様のご尽力により,LuaTeX のOTC対応が進み,TeX Live 2016 では,Mac付属のOTC形式の和文フォントを LuaTeX-ja から問題なく使用できるようになりました。その結果,従来通り

\usepackage[deluxe,hiragino-pron,jis2004]{luatexja-preset}

のように hiragino-pron プロファイルを使用することで,OS付属のヒラギノフォントを埋め込んだPDFを作成できるようになりました。

さらに,TeX Live 2016 の LuaTeX-ja では,luatexja-fontspec パッケージをロードし,\jfontspec コマンドでフォント名を指定することで,Sierra 付属の全和文フォントを自由に使えるようになっています。縦組も問題ありません。

Sierraの全和文フォントを LuaTeX-ja で一斉出力するサンプルコード

準備として,やはり事前に

$ sudo perl cjk-gs-integrate.pl --link-texmf --force

を実行(および必要に応じて mktexlsr)し,TEXMFLOCAL内に Sierra のフォントへのシンボリックリンクを作成することで,各フォントが LuaTeX から見える状態にしておいてください。

%#!lualatex
\documentclass[b4j]{ltjsarticle}
\usepackage[margin=1cm,noheadfoot]{geometry}
\pagestyle{empty}
\usepackage{luatexja-fontspec}
\usepackage{lltjext}

\def\test#1#2{{\jfontspec{#1}\makebox[22\zw][l]{#2}あいうー123「葛祇辻鷗」。☃}\par}

\def\testAll{%
\test{Hiragino Sans W0}{ヒラギノ角ゴシック W0}
\test{Hiragino Sans W1}{ヒラギノ角ゴシック W1}
\test{Hiragino Sans W2}{ヒラギノ角ゴシック W2}
\test{Hiragino Sans W3}{ヒラギノ角ゴシック W3}
\test{Hiragino Sans W4}{ヒラギノ角ゴシック W4}
\test{Hiragino Sans W5}{ヒラギノ角ゴシック W5}
\test{Hiragino Sans W6}{ヒラギノ角ゴシック W6}
\test{Hiragino Sans W7}{ヒラギノ角ゴシック W7}
\test{Hiragino Sans W8}{ヒラギノ角ゴシック W8}
\test{Hiragino Sans W9}{ヒラギノ角ゴシック W9}
\test{HiraMinProN-W3}{ヒラギノ明朝 ProN W3}
\test{HiraMinProN-W6}{ヒラギノ明朝 ProN W6}
\test{HiraMaruProN-W4}{ヒラギノ丸ゴ ProN W4}

\test{YuMincho Medium}{游明朝体 ミディアム}
\test{YuMincho Demibold}{游明朝体 デミボールド}
\test{YuMincho Extrabold}{游明朝体 エクストラボールド}
\test{YuMincho +36p Kana Medium}{游明朝体+36ポかな ミディアム}
\test{YuMincho +36p Kana Demibold}{游明朝体+36ポかな デミボールド}
\test{YuMincho +36p Kana Extrabold}{游明朝体+36ポかな エクストラボールド}

\test{YuGothic Medium}{游ゴシック体 ミディアム}
\test{YuGothic Bold}{游ゴシック体 ボールド}

\test{YuKyokasho Medium}{游教科書体 ミディアム}
\test{YuKyokasho Bold}{游教科書体 ボールド}
\test{YuKyokasho Yoko Medium}{游教科書体 横用 ミディアム}
\test{YuKyokasho Yoko Bold}{游教科書体 横用 ボールド}

\test{Toppan Bunkyu Mincho Regular}{凸版文久明朝 レギュラー}
\test{Toppan Bunkyu Gothic Regular}{凸版文久ゴシック レギュラー}
\test{Toppan Bunkyu Gothic Demibold}{凸版文久ゴシック デミボールド}
\test{Toppan Bunkyu Midashi Mincho Extrabold}{凸版文久見出し明朝 エクストラボールド}
\test{Toppan Bunkyu Midashi Gothic Extrabold}{凸版文久見出しゴシック エクストラボールド}

\test{Klee Medium}{クレー ミディアム}
\test{Klee Demibold}{クレー デミボールド}

\test{Tsukushi A Round Gothic Regular}{筑紫A丸ゴシック レギュラー}
\test{Tsukushi A Round Gothic Bold}{筑紫A丸ゴシック ボールド}
\test{TsukuBRdGothic-Regular}{筑紫B丸ゴシック レギュラー}
\test{Tsukushi B Round Gothic Bold}{筑紫B丸ゴシック ボールド}
}

\begin{document}
\setlength\parindent{0pt}

\testAll

\vspace{1cm}

\parbox<t>{37\zw}{\testAll}
\end{document}

出力結果

f:id:doraTeX:20161202154600p:plain f:id:doraTeX:20161202154613p:plain

注意

  • 上記ソースのように,「筑紫B丸ゴシック レギュラー」だけは,なぜかフォント名を Full Name ではなく PostScript Name で指定しなければいけませんでした。
  • クレーや筑紫A/B丸ゴシックには,+nlck や +jp04 の OpenType feature がないようで,そのままでは JIS2004 字形での出力ができませんでした。フォント自体には JIS2004 字形は収録されていますので,JIS2004 字形対応の CMap ファイルを使用したり,otfパッケージなどでCIDを直接指定したりすれば JIS2004 字形を出力することは可能です。

(u)pTeX からヒラギノ/凸版文久以外の和文フォントを使うには

LuaTeX-ja の場合,fontspec のおかげで,Sierra 付属の全和文フォントを,上記のようにフォント名指定で気軽に使用できます。それに対し,(u)pTeX + dvipdfmx のワークフローの場合,このような多彩なフォントを使いたければ,それぞれの tfm/vf の用意,dvipdfmx のマップ設定を手動で行う必要があります。特に,

  • 游明朝体 ミディアム/デミボールド/エクストラボールド
  • 游明朝体+36ポかな ミディアム/デミボールド/エクストラボールド
  • 游教科書体 ミディアム/ボールド
  • 游教科書体 横用 ミディアム/ボールド

については,ROS が Adobe-Identity-0 であるため,それぞれ専用の CMap ファイルを用意する必要があります。

これらの CMap ファイル,およびその使用サンプルは,以下で入手できるようにしてあります。

これらを利用すれば,(u)pTeX + dvipdfmx のワークフローでも,Sierra の全和文フォントを同時使用することができます。

(u)pTeX + dvipdfmx で自由に和文フォントを追加し,Sierra の全和文フォントを使用する方法については,6日目の続編記事で解説しますので,お楽しみに!

*1:なお,/System/Library/Framewoks 以下の場所にもフォントらしきファイル名がありますが,ファイルサイズが小さく,実体ではないものと考えられます。/System/Library/Assets 以下にあるものの仮の姿か何かだと思われます。