
次のように書こうとしています$T_E$
が、斜体フォントで表示されます。LaTeX でも試してみました$\text{T_E}$
が、エラーが発生します。
答え1
答え2
次の例は、いくつかの可能な解決策を示しています。
\documentclass{scrartcl}
\usepackage{amsmath}
\newcommand{\testline}{Text $\mathrm{T}_\mathrm{E}$ or $\text{T}_\text{E}$ or $\textup{T}_\textup{E}$ or T\textsubscript E}
\begin{document}
\testline
\itshape\testline
\sffamily\upshape\testline
\itshape\testline
\rmfamily\upshape\bfseries%as before but bold
\testline
\itshape\testline
\sffamily\upshape\testline
\itshape\testline
\end{document}
いくつかはテキストのスタイルとフォントを採用していることに注意してください。
答え3
最新のツールチェーンで
unicode-math
パッケージ (個人的には推奨しますが、誰もが同意するわけではありません)では、\mathrm
下位互換性のために が引き続きサポートされていますが、同義語の や\mathup
、密接に関連するもサポートされています\symup
。
を使用すると、通常のテキスト フォントや、、\symup
などの演算子名とは異なる直立フォントを指定できます。私がよく使う例は、オイラー恒等式を ISO スタイルで設定することです。つまり、記号定数を直立フォントで設定し、定数 e、π、i をオイラーで、その他すべてを Palatino で設定します。これは、数学変数に異なる直立フォントが必要な理由を示す良い例です。log
sin
lim
\documentclass[varwidth, preview]{standalone}
\usepackage{mathtools}
\usepackage[math-style=ISO]{unicode-math}
\setmainfont{TeX Gyre Pagella}
\defaultfontfeatures{Scale=MatchLowercase}
\setmathfont{Asana Math}
\setmathfont[range={up/{Latin,latin,Greek,greek},
bfup/{Latin,latin,Greek,greek}},
script-features={}, sscript-features={}
]{Neo Euler}
\newcommand\upe{\symup{e}}
\newcommand\upi{\symup{i}}
\begin{document}
\begin{align*}
\upe^{\upi x} &= \cos{x} + \upi \sin{x} \\
\upe^{\upi \uppi} + 1 &= 0
\end{align*}
\end{document}
(デフォルトのフォントでこのようなことを行う場合は、Latin Modern Roman Unslanted または CMU Serif Upright Italic のいずれかを試してみてください。後者のサンプルを以下に示します。
\documentclass[varwidth, preview]{standalone}
\usepackage{amsmath}
\usepackage[math-style=ISO]{unicode-math}
\setmathfont{Latin Modern Math}
\setmathfont[range=up/{Latin,latin,Greek,greek}]{CMU Serif Upright Italic}
\begin{document}
\begin{align*}
\symup{e}^{\symup{i} x} &= \cos{x} + \symup{i} \sin{x} \\
\symup{e}^{\symup{i \pi}} + 1 &= 0
\end{align*}
\end{document}
コマンド\symup
は、このように使用されることを想定しています。 コマンド\mathrm
と\mathup
コマンドは、変数 TIME や ENERGY に名前を付けるなど、方程式内の単語に使用されます。 単語全体に使用するもう 1 つの良い方法は、\operatorname
from を使用することですamsmath
。 これにより、テキストが または のようにフォーマットされ\log
、\sin
2 log のようなスペースが挿入されます。バツ2logx ではなく。
\mathtt
同様に、\mathsfup
等幅文字とサンセリフ文字にも とがあります。
たとえば、\newcommand\TIME{\mathop{\mbox{\scshape time}}}
演算子のスペースを入れて、TIME を小文字で表示することもできます。
でパッケージをロードすると、直立した数学変数をデフォルトにすることができます\usepackage[math-style=upright]{unicode-math}
。
レガシーツールチェーン
このeulerpx
パッケージは、オイラー数学変数とパラチノテキストの一般的な組み合わせと、の記号を実装しますnewpxmath
。PDFLaTeX で直立文字が必要な場合、これは私にとって最も魅力的なパッケージです。
このcfr-lm
パッケージを使用すると、直立イタリック体を簡単に利用できるようになります。このパッケージを使用すると、直立イタリック体を取得するように記述できます\DeclareRobusTCommand\mathui[1]{\mbox{\uishape #1}}
。先ほど示したスモールキャップスの例も\scshape
同様に機能します。
変数名をデフォルトのフォントでフォーマットするには、\operatorname
from がamsmath
適切なオプションです。
より複雑な使用例としては、\DeclareMathAlphabet
および があります\DeclareMathSymbol
。