當放置在 for 循環中時,algorithm2e 中的數學環境中的文字具有不同的排版

當放置在 for 循環中時,algorithm2e 中的數學環境中的文字具有不同的排版

以下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}

結果是: 在此輸入影像描述

正如您所看到的,文本max有兩種不同的排版。在for循環指令中,它是斜體的,而我希望它保持像演算法的第一行一樣。

我嘗試放置\displaystyle但它沒有改變。刪除第二行中的命令\text也不起作用。

答案1

該命令\text用於在公式中插入文本,並尊重公式外部當前的字體。

裡面的文字\For和其他類似的指令algorithm2e都是用斜體字排版的。

無論如何,你的“max”不是文字插入,應該總是輸入為\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}

在此輸入影像描述

相關內容