如何使用大写希腊字母的“\mathrm”和“newtx”包?

如何使用大写希腊字母的“\mathrm”和“newtx”包?

我有使用 的宏\mathrm。但是,如果参数是大写希腊字母,newtx则包会将结果更改为T1编码中的数学符号。我不希望\mathrm对大写希腊字母做任何事情,而只是传递。有没有办法从包中获取此结果newtx

\documentclass{report}
\usepackage[T1]{fontenc}
\usepackage{newtxmath}

\begin{document}
    I want $\mathrm{\Gamma}$ to be same as $\Gamma$.
\end{document}

答案1

您需要使它们成为 mathord 而不是 mathalpha,这样它们就不会遵循当前的数学字母表:

\documentclass{report}
\usepackage[T1]{fontenc}
\usepackage{newtxmath}

\makeatletter
  \re@DeclareMathSymbol{\Gamma}{\mathord}{lettersA}{0}
  \re@DeclareMathSymbol{\Delta}{\mathord}{lettersA}{1}
  \re@DeclareMathSymbol{\Theta}{\mathord}{lettersA}{2}
  \re@DeclareMathSymbol{\Lambda}{\mathord}{lettersA}{3}
  \re@DeclareMathSymbol{\Xi}{\mathord}{lettersA}{4}
  \re@DeclareMathSymbol{\Pi}{\mathord}{lettersA}{5}
  \re@DeclareMathSymbol{\Sigma}{\mathord}{lettersA}{6}
  \re@DeclareMathSymbol{\Upsilon}{\mathord}{lettersA}{7}
  \re@DeclareMathSymbol{\Phi}{\mathord}{lettersA}{8}
  \re@DeclareMathSymbol{\Psi}{\mathord}{lettersA}{9}
  \re@DeclareMathSymbol{\Omega}{\mathord}{lettersA}{10}
\makeatother

\begin{document}
    I want this $\mathrm{\Gamma}$ to be same as $\Gamma$.
\end{document}

相关内容