将 mathspec \setmathfont 与 \newenvironment 结合使用

将 mathspec \setmathfont 与 \newenvironment 结合使用

我想在两种字体之间来回切换。但我希望这两种字体既影响普通文本,也影响数学模式中的数字和字母。类似这样的方法应该可以正常工作...

\documentclass{minimal}
\usepackage{unicode-math}

\newenvironment{example}{\setmathfont{Arial}\setmainfont{Arial}}{}
\newenvironment{exampletwo}{\setmathfont{Bradley Hand ITC}\setmainfont{Bradley Hand ITC}}{}

\begin{document}
\begin{example}  Prove the 33 is a factor of $2^{55}+1$ \end{example}\\
\begin{exampletwo}
 First note 33 that $2^{55}+1 &=(2^5)^{11}+1$
\end{exampletwo}
\item
\end{document}

当我尝试使用类似 的东西时,问题就出现了\cdots,因为我使用的字体没有完整的数学支持。我通过使用 mathspec 和类似的东西解决了这个问题

 \setmathfont(Digits,Latin){Bradley Hand ITC}

所以所有符号都保留为默认字体。但我无法让\setmathfontmathspec包在命令中工作\newenvironment

非常感谢您的帮助。

非常感谢

答案1

您想在序言中做字体声明,然后在环境中切换数学版本。

在此处输入图片描述

\documentclass{article}
\usepackage{fontspec,unicode-math}
\setmainfont{Arial}
\DeclareMathVersion{bhitc}
\setmathfont[version=normal]{Arial}
\setmathfont[version=bhitc]{Bradley Hand ITC}
\newenvironment{example}{\mathversion{normal}}{}
\newenvironment{exampletwo}{\mathversion{bhitc}}{}

\begin{document}
\begin{example}  Prove the 33 is a factor of $2^{55}+1$ \end{example}\\
\begin{exampletwo}
 First note 33 that $2^{55}+1 =(2^5)^{11}+1$
\end{exampletwo}

\end{document}

相关内容