Ticket #31422

luatexja-preset の jis2004 下で fontspec の CJKShape 指定が効かなくなる

Open Date: 2013-05-23 19:49 Last Update: 2013-11-01 17:17

Reporter:
Owner:
(None)
Type:
Status:
Closed
Component:
(None)
MileStone:
(None)
Priority:
5 - Medium
Severity:
5 - Medium
Resolution:
Fixed
File:
None

Details

次のソースを走らせてみました:

\documentclass{ltjsarticle}
\usepackage[kozuka-pr6n,jis2004]{luatexja-preset}
\begin{document}
\jfontspec{IPAexMincho}
JIS~X~0213:2004: {\LARGE 辻}

\jfontspec[CJKShape=JIS1990]{IPAexMincho}
JIS~X~0208:1990: {\LARGE 辻}
\end{document}
すると,2つめの「辻」が CJKShape=JIS1990 を指定したのにも関わらず二点辻となります. LuaTeX-ja というより,どうやら fontspec だけでも同じ症状が起きるようです. 使った fontspec は 2013/05/20 v2.3c です.

Ticket History (3/7 Histories)

2013-05-23 19:49 Updated by: h7k
  • New Ticket "luatexja-preset の jis2004 下で fontspec の CJKShape 指定が効かなくなる" created
2013-05-25 18:54 Updated by: kmaeda
Comment

遅くなりましたが,つまりこういうことですかね.

\documentclass{article}
\usepackage{fontspec}
\defaultfontfeatures{RawFeature=+nlck}
\begin{document}
\fontspec{IPAexMincho}
JIS~X~0213:2004: {\LARGE 辻}

\fontspec[CJKShape=JIS1990]{IPAexMincho}
JIS~X~0208:1990: {\LARGE 辻}
\end{document}

\defaultfontfeatures{CJKShape=NLC} としても同じなので,そういう仕様ですかね. この辺りの挙動を調べるために,luaotfload のみでやってみると次のような感じになりました.

\documentclass{article}
\usepackage{luaotfload}
\begin{document}
\font\i=IPAexMincho                              \i 辻 % 2点
\font\i=IPAexMincho:script=latn;+jp90            \i 辻 % 1点
\font\i=IPAexMincho:script=latn;+jp90;+nlck      \i 辻 % 2点
\font\i=IPAexMincho:script=latn;+nlck;+jp90      \i 辻 % 2点
\font\i=IPAexMincho:script=latn;+nlck;+jp90;-nlck\i 辻 % 1点
\end{document}
2013-05-25 20:48 Updated by: h7k
Comment

kmaeda への返信

\defaultfontfeatures{CJKShape=NLC} としても同じなので,そういう仕様ですかね.

なるほど……. XeLaTeX でも実験してみましたが,やはり \defaultfontfeatures{CJKShape=NLC} などを 指定すると,\fontspec[] における CJKShape 指定が無効になってしまうようです.

\defaultjfontfeatures に頼らない方法があればいいですが,現段階では LuaTeX-ja のドキュメントに 「luatexja-preset で 90jis/jis2004 を使うと……」と注意を載せるしかないのかなあ.

2013-05-25 21:06 Updated by: kmaeda
Comment

単純に \setmainjfont, \setsansjfont したあとに,\g_ltj_fontspec_default_fontopts_tl を luatexja-preset を読み込む前の値に戻すのではだめなのでしょうか?

もしくは fontspec 自体に,\defaultfontfeatures を \fontspec のオプション指定で上書きできないのは問題ではないか,と提起してもよいかも.

話は変わりますが,fontspec のバージョンアップで \defaultfontfeatures に機能追加が行われているみたいなので,luatexja-fontspec も追随するべきかな.

2013-06-06 18:38 Updated by: h7k
  • Resolution Update from None to Fixed
Comment

結局 c93db4b のように,defaultjfontfeatures を使わないようにしました,

fontspec のバージョンアップで \defaultfontfeatures に機能追加が行われているみたいなので,luatexja-fontspec も追随するべきかな.

時間がなくてまだ見ていないのですが,追随してもいいんじゃないんでしょうか.

2013-08-17 21:54 Updated by: kmaeda
Comment

fontspec のバージョンアップで \defaultfontfeatures に機能追加が行われているみたいなので,luatexja-fontspec も追随するべきかな.

時間がなくてまだ見ていないのですが,追随してもいいんじゃないんでしょうか.

ようやく追随しました (ce0d1b7).

2013-11-01 17:17 Updated by: h7k
  • Status Update from Open to Closed
  • Ticket Close date is changed to 2013-11-01 17:17
Comment

遅くなりましたが,完了としておきます.

Attachment File List

No attachments

Edit

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » Login