非イタリックフォントの数式

非イタリックフォントの数式

次のように書こうとしています$T_E$が、斜体フォントで表示されます。LaTeX でも試してみました$\text{T_E}$が、エラーが発生します。

答え1

実際に数式を書いているのか、テキストを書いているのかによって、次のようになります。

 \documentclass{article}

\begin{document}
$\mathrm{T}_{\mathrm{E}}$ or T\textsubscript{E}

\end{document}

ここに画像の説明を入力してください

答え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 で設定します。これは、数学変数に異なる直立フォントが必要な理由を示す良い例です。logsinlim

\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}

CMU セリフ アップライト イタリック サンプル

コマンド\symupは、このように使用されることを想定しています。 コマンド\mathrm\mathupコマンドは、変数 TIME や ENERGY に名前を付けるなど、方程式内の単語に使用されます。 単語全体に使用するもう 1 つの良い方法は、\operatornamefrom を使用することですamsmath。 これにより、テキストが または のようにフォーマットされ\log\sin2 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同様に機能します。

変数名をデフォルトのフォントでフォーマットするには、\operatornamefrom がamsmath適切なオプションです。

より複雑な使用例としては、\DeclareMathAlphabetおよび があります\DeclareMathSymbol

関連情報