自 2011 年起,TeXLive 2012 下是否更改为 xeCJK?

自 2011 年起,TeXLive 2012 下是否更改为 xeCJK?

从 2011 年春末开始,我在所有文档中定期使用几行代码,从而可以生成包含常规罗马文本、IPA 和所有(或几乎所有)Unicode CJK 平面的文档。下面的 MWE 说明了我一直在使用的 xeCJK 代码块:

%!TEX TS-program = xelatex
%!TEX encoding = UTF-8 Unicode

\documentclass{article}

\usepackage[fallback]{xeCJK}[2011/05/01] % ver 2.3.19
\setromanfont{TeX Gyre Termes}
\setsansfont[Scale=MatchLowercase]{Doulos SIL}
\setCJKmainfont{HAN NOM A}
\setCJKfallbackfamilyfont{rm}{HAN NOM B}

\begin{document}
Plain Roman script is here. 

And some IPA: [\textsf{ɕy̆an₃₄ ʈʂʅ₄₄ jɵu̯₅₂ ɕy̆an₃₄}]

最後一句:玄之又

答案1

看来您使用的是 的最新版本 (SVN 4332) expl3。因此请在线更新您的 TeX Live 2012 以使用 的最新版本 (3.1.0) xeCJK。如果没有可用的更新,请将以下代码放入您的序言中。

\xeCJKsetup{CJKglue=\hspace{0pt plus .08 \baselineskip }}

这都是我的失误。我\c_zero_skip在 的旧版本中用错了方法xeCJK。但同时,实际上\c_zero_skipdim的旧版本中的寄存器,expl3而不是skip它应有的寄存器。最新版本expl3已更正了它。因此会引发错误。

相关内容