数学环境中的 CJK

数学环境中的 CJK

我尝试在 XeLaTeX 中将 CJK 字符显示为数学公式的一部分,但效果不佳。我尝试了许多选项,但都失败了:

  • 通过然后使用定义\jp字体命令。这给了我一个未定义的控制序列错误。fontspec\text{\jp{character}}
  • 使用fontspec\setmathfont这也给了我一个未定义的控制序列错误。
  • 使用unicode-math带有\setmathfont[range="4E00-"2FA1F]{font}- 根据范围的包,CJK 字符要么仍然显示为“不可用字符”框,要么直接消失

一个最小的失败示例:

\documentclass{article}
\usepackage{fontspec}
\setmainfont{CMU Serif}
\newfontfamily\jp{TakaoPGothic}
\usepackage{unicode-math}
\setmathfont[range="96E2]{TakaoPGothic} % the code for this particular character
\setmathfont{CMU Serif}
\begin{document}

$離$
\jp{離}

\end{document}

这会在第一行产生一个缺失字符框,并在第二行正确输出 離。

有什么好方法可以做到这一点吗?

答案1

通常,您不应使用unicode-math包来指定非预定义 unicode 块的字体。该包不旨在为数学公式设置 CJK 字体。此外,您不应将其用作CMU Serif数学字体,因为它缺少大多数数学字形和 opentype 数学表。

要在 XeTeX 中排版日文,最好使用基于xeCJK以下包或包:zxjatypexeCJK。另请参阅如何用 LaTeX 写日语?

数学公式中的日语实际上是一些文本。在 LaTeX 中,我们使用\textfromamsmath包来排版数学中的文本。比如说,你应该使用:

\documentclass{article}
\usepackage{amsmath}
\usepackage{fontspec}
\setmainfont{CMU Serif}
\usepackage{xeCJK}
\setCJKmainfont{IPAexMincho} % or some other Japanese font
\begin{document}

$\text{離}$


\end{document}

\text如果启用CJKmath以下选项,也可以在数学公式中使用日语字符xeCJK

\documentclass{article}
\usepackage{fontspec}
\setmainfont{CMU Serif}
\usepackage{xeCJK}
\xeCJKsetup{CJKmath=true}
\setCJKmainfont{IPAexMincho} % or some other Japanese font
\begin{document}

$離$


\end{document}

相关内容