algorithm2e:在 \item 中太宽

algorithm2e:在 \item 中太宽

考虑

\documentclass{article}
\usepackage[tworuled]{algorithm2e}%%% v5.1 or v5.2. Could not find v5.3 for download.
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\begin{algorithm}[H]
  TEST1
\end{algorithm}
\begin{enumerate}
\item \lipsum[2]

  \begin{algorithm}[H]
    TEST2
  \end{algorithm}
\end{enumerate}
\begin{algorithm}[H]
  TEST3
\end{algorithm}
\end{document}

在输出中

乳胶输出

TEST2 周围的水平线太长。如果我们在 TEST2 中添加更多文本,它也会超出右边框进入边距。是否有可能让 TEST2 或多或少自动在右文本边框处结束?

答案1

这是因为algorithms 是用来浮动的,而宽度方面没有任何限制(通常是\textwidth)。如果您希望algorithms 内联(而不是浮动;通过使用[H]ere float 说明符),那么您必须将其设置在minipage预先指定的宽度内 -\linewidth在这种情况下:

在此处输入图片描述

\documentclass{article}

\usepackage[tworuled]{algorithm2e}
\usepackage{lipsum}

\begin{document}

\lipsum[1]
\begin{algorithm}[H]
  TEST1
\end{algorithm}

\begin{enumerate}
  \item \lipsum[2]

  \begin{minipage}{\linewidth}%
  \begin{algorithm}[H]
    TEST2
  \end{algorithm}
  \end{minipage}
\end{enumerate}

\begin{algorithm}[H]
  TEST3
\end{algorithm}

\end{document}

相关内容