选项 xeCJK 和 fontspec 冲突

选项 xeCJK 和 fontspec 冲突

我需要加载fontspec带有选项的包no-math,同时还要加载xeCJK包以在大型英文文档中包含一些日文名称。由于xeCJK包已经加载了fontspect没有任何选项的包,因此我遇到了问题。更准确地说,代码

\documentclass{scrbook}

\usepackage{xeCJK}
\usepackage[no-math]{fontspec}

\begin{document}
\begin{CJK}
  角谷静夫
\end{CJK}
\end{document}

导致fontspec包的选项冲突,而代码

\documentclass{scrbook}

\usepackage[no-math]{fontspec}
\usepackage{xeCJK}

\begin{document}
\begin{CJK}
  角谷静夫
\end{CJK}
\end{document}

导致以下错误:

 LaTeX Error: Environment CJK undefined.

有办法解决这个问题吗?我也很高兴能找到一个解决方案,使用除 之外的其他软件包来包含日语片段xeCJK

答案1

如果 ,则应fontspec在 之前加载。 并且未提供环境,因此应省略 。xeCJKno-mathCJKxeCJK

一个简单的例子:

\documentclass{scrbook}
\usepackage[no-math]{fontspec}
\usepackage{xeCJK}
\setCJKmainfont{Hiragino Mincho ProN}
\begin{document}
角谷 静夫
\end{document}

答案2

一个相当原始的解决方法是使用 加载合适的日文字体fontspec。当然,这样xeCJK就无法使用该包的附加排版功能。生成的代码如下:

\documentclass{scrbook}

\usepackage[no-math]{fontspec}
\newfontfamily\cjkfont{HanaMinA}

\begin{document}
{\cjkfont 角谷 静夫}
\end{document}

相关内容