xelatex mathspec 具有多语言功能

xelatex mathspec 具有多语言功能

如何使用mathspec包和polyglossia俄语?

平均能量损失

\documentclass[14pt]{extreport}
\usepackage{mathtools}
\usepackage{amsfonts}
\usepackage{amsmath}
\usepackage{commath}    % \dif sign
\usepackage{array}
\usepackage{mathspec}

\usepackage{polyglossia}
\usepackage{ucharclasses}
\usepackage{microtype} % better management of overfulls


\setdefaultlanguage{russian}
\setotherlanguage{english}
\setTransitionsForLatin{\begingroup\hyphenrules{english}}{\endgroup}
%\setallmainfonts[Mapping=tex-text, Numbers={Lining,Proportional}]{Times New Roman}
\setmainfont[Mapping=tex-text]{Times New Roman}
\setmathfont{Latin Modern Math}
\setmonofont{Consolas}
\DeclareMathSizes{12}{12}{8}{6}
\DeclareMathSizes{14}{14}{9}{7}


\begin{document}
  \(\lambda_{сист}\) --- интенсивность системы.
\end{document}

在此处输入图片描述

答案1

你必须告诉 XeLaTeX 下标是文本:

\documentclass[14pt]{extreport}
\usepackage{mathtools}
\usepackage{amsfonts}
\usepackage{amsmath}
\usepackage{array}
\usepackage{mathspec}

\usepackage{polyglossia}
\usepackage{ucharclasses}
\usepackage{microtype} % better management of overfulls


\setdefaultlanguage{russian}
\setotherlanguage{english}
\setTransitionsForLatin{\begingroup\hyphenrules{english}}{\endgroup}
\setallmainfonts[Mapping=tex-text, Numbers={Lining,Proportional}]{Times New Roman}
%\setmainfont[Mapping=tex-text]{Times New Roman}
\setmonofont{Consolas}
\DeclareMathSizes{12}{12}{8}{6}
\DeclareMathSizes{14}{14}{9}{7}

\newcommand{\dif}{\mathop{}\!\mathrm{d}}

\begin{document}

\(\lambda_{\text{сист}}\) --- интенсивность системы.

\("f(x,y)\dif x+g(x,y)\dif y\)

\end{document}

在此处输入图片描述

我删除了对 的调用commath,我不推荐。我添加了对 的良好定义\dif,这肯定比 给出的错误定义要好commath

不过,我建议您使用专门的数学字体,而不是笨拙的mathspec

\documentclass[14pt]{extreport}
\usepackage{mathtools}
\usepackage{amsfonts}
\usepackage{amsmath}
\usepackage{array}
\usepackage{unicode-math}

\usepackage{polyglossia}
\usepackage{ucharclasses}
\usepackage{microtype} % better management of overfulls


\setdefaultlanguage{russian}
\setotherlanguage{english}

\setTransitionsForLatin{\begingroup\hyphenrules{english}}{\endgroup}

\setmainfont[Ligatures=TeX]{Times New Roman}
\setmathfont{XITS Math}
\setmonofont{Consolas}
\DeclareMathSizes{12}{12}{8}{6}
\DeclareMathSizes{14}{14}{9}{7}

\newcommand{\dif}{\mathop{}\!\mathrm{d}}

\begin{document}

\(\lambda_{\text{сист}}\) --- интенсивность системы.

\(f(x,y)\dif x+g(x,y)\dif y\)

\end{document}

在此处输入图片描述

如果使用 TeX Gyre Termes Math 而不是 XITS Math,我会得到以下结果:

在此处输入图片描述

相关内容