algorithm2e の math 環境のテキストは、for ループ内に配置すると異なる書体になります。

algorithm2e の math 環境のテキストは、for ループ内に配置すると異なる書体になります。

次の MWE:

% Created 2016-07-04 Mon 15:02
\documentclass[a4paper, 12pt]{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{mathtools, nccmath}

\usepackage[ruled, vlined, linesnumbered]{algorithm2e}

\begin{document}



\begin{algorithm}
    \DontPrintSemicolon
    $D_b^{\text{max}}$

    \For{${D_b^{\text{max}}}$}
    {
    }
  \end{algorithm}



\end{document}

結果は次のようになります: ここに画像の説明を入力してください

ご覧のとおり、テキストにはmax2 つの異なる書体があります。forループ命令では斜体になっていますが、アルゴリズムの 1 行目のようにそのままにしておきたいのです。

入れてみました\displaystyleが、変わりませんでした。2\text行目のコマンドを削除しても機能しません。

答え1

このコマンドは\text、数式外で現在使用されているフォントを尊重しながら、数式内にテキストを挿入するためのものです。

内部のテキスト\Forとその他の同様のコマンドはalgorithm2e斜体で表示されます。

とにかく、あなたの「最大値」はテキスト挿入ではなく、いつも\mathrm{max}(または、少し乱暴に言えば)と入力してください\max

ここでは、結果は同じだが\mathrm{max}概念的に優れていることを示すために両方を使用しています (数式内の他の同様の略語にも適用されます)。

\documentclass[a4paper, 12pt]{article}
\usepackage{amsmath}

\usepackage[ruled, vlined, linesnumbered]{algorithm2e}

\begin{document}

\begin{algorithm}
    \DontPrintSemicolon
    $D_b^{\mathrm{max}}$

    \For{${D_b^{\max}}$}
    {
    }
  \end{algorithm}

\end{document}

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

関連情報