Windows 10 TeX Live 2019です。
以下のサンプルをLuaLaTeXでコンパイルすると三点リーダーが横向きになってしまいます。
\documentclass[tate,book]{jlreq}
\begin{document}
……三点リーダー
\end{document}
LuaLaTeXのバージョンは
This is LuaTeX, Version 1.10.0 (TeX Live 2019/W32TeX)
です。
同じソースをTeX Live 2018のLuaLaTeXでコンパイルすると正しく縦向きになります。
LuaLaTeXのバージョンは
This is LuaTeX, Version 1.07.0 (TeX Live 2018/W32TeX)です。
類似の現象として
https://okumuralab.org/tex/mod/forum/discuss.php?d=2209
があったので
\usepackage[Script=CJK]{luatexja-fontspec}
を追加してみたところ
TeX Live 2019/TeX Live 2018の双方で
! LaTeX Error: Unknown option `Script' for package `fontspec-luatex'.
というエラーになってしまいました。
どうすればよいでしょうか?
よろしくお願いします。
自分なりに調べて、原因と思われることが分かりました。
まず、出力されていたのは横組用グリフではなく「縦組用グリフを90度回転したもの」でした。
LuaTeX-ja パッケージには縦組用和文フォントに関して以下のような機能があります。
----------
「いかなるscript, languageでもvertにより置換されない」グリフのうち,UAX #50で“r”もしくは“Tr”と指定されているものは90度自動回転させる.
(LuaTeX-ja パッケージドキュメント 7.2 節より)
----------
さらに、ソースコードを見ると以下のようなコメントがあります。
[ltj-jfont.lua]
----------
-- 同じグリフが複数の Unicode ポイントを持っている場合.
-- いずれかの Unicode ポイントで rot = true ならば全体で rotate
----------
実際に、IPAex明朝 (ipaexm.ttf)は三点リーダーの縦組み用グリフと「U+205D TRICOLON」とグリフを共有しているようです。
U+205D は UAX #50 で“R”と指定されているのでグリフは90度回転されて出力されます。
結局、IPAexフォント以外のフォントを使用するしかなさそうです。
まず、出力されていたのは横組用グリフではなく「縦組用グリフを90度回転したもの」でした。
LuaTeX-ja パッケージには縦組用和文フォントに関して以下のような機能があります。
----------
「いかなるscript, languageでもvertにより置換されない」グリフのうち,UAX #50で“r”もしくは“Tr”と指定されているものは90度自動回転させる.
(LuaTeX-ja パッケージドキュメント 7.2 節より)
----------
さらに、ソースコードを見ると以下のようなコメントがあります。
[ltj-jfont.lua]
----------
-- 同じグリフが複数の Unicode ポイントを持っている場合.
-- いずれかの Unicode ポイントで rot = true ならば全体で rotate
----------
実際に、IPAex明朝 (ipaexm.ttf)は三点リーダーの縦組み用グリフと「U+205D TRICOLON」とグリフを共有しているようです。
U+205D は UAX #50 で“R”と指定されているのでグリフは90度回転されて出力されます。
結局、IPAexフォント以外のフォントを使用するしかなさそうです。