在 algorithm2e 中应用背景颜色(但不在标题上)

在 algorithm2e 中应用背景颜色(但不在标题上)

本文在算法环境中应用背景颜色第 2 部分展示如何使用包来改变算法的背景颜色algorithm2e

我想做同样的事情,但只在代码本身上,以便标题保持页面背景颜色。

跨国企业:

\documentclass{article}
\usepackage[linesnumbered]{algorithm2e}
\usepackage{xcolor}

\SetAlCapSkip{1em}

\begin{document}
\begin{center}
  \colorbox{gray!20}{
    \begin{minipage}{0.8\textwidth}
      \begin{algorithm}[H]
        This is line one\\
        This is line two
        \caption{Some Title.}
    \end{algorithm}
  \end{minipage}}
\end{center}
\end{document}

我得到:

结果

“算法 1:一些标题”应该采用白色背景色。

答案1

这是可能的,但必须伪造ruled算法包中默认的选项“ ”,标签如下所示:

    \documentclass{article}
\usepackage[linesnumbered,ruled]{algorithm2e}
\usepackage{framed,xcolor}

\SetAlCapSkip{1em}
\definecolor{shadecolor}{cmyk}{0,0,0,0.15}
\makeatletter
\def\@algocf@pre@ruled{\begin{shaded}}%
\def\@algocf@post@ruled{\end{shaded}\relax}%
\makeatother
\begin{document}

      \begin{algorithm}[H]
        This is line one\\
        This is line two
        \caption{Some Title.}
    \end{algorithm}

\begin{algorithm}
\caption{How to write algorithms}
\SetAlgoLined
\KwData{this text}
\KwResult{how to write algorithm with \LaTeX2e }
initialization\;
\While{not at end of this document}{
read current\;
\eIf{understand}{
go to next section\;
current section becomes this one\;
}{
go back to the beginning of current section\;
}
}
\end{algorithm}


\end{document}

答案2

在下一个仍处于测试阶段的版本 5.3 中,我添加了两个选项:阴影标题阴影允许对算法背景和标题背景进行阴影处理。您可以我的主页

请注意,这仍处于测试阶段,即使这些选项已经过测试,但选项和包之间可能发生的所有交互尚未经过测试。

相关内容