如何在 LaTeX 中为整个算法环境着色?

如何在 LaTeX 中为整个算法环境着色?

整个算法环境需要用蓝色表示。虽然可以在报告或文章环境中完成此操作,但我无法在 IEEE 期刊模板中完成此操作。

@Masroor:谢谢您举的例子,但顶部和底部的线条仍然是黑色的。我们如何才能让它们也变成蓝色呢?

在此处输入图片描述

答案1

以下对我有用。

\documentclass[journal]{IEEEtran}

\usepackage{algorithmic}
\usepackage{algorithm}

\usepackage{lipsum}

\usepackage{filecontents}

\begin{filecontents*}{\jobname.alg}
  \REQUIRE $n \geq 0 \vee x \neq 0$
  \ENSURE $y = x^n$

  \STATE $y \leftarrow 1$
  \IF{$n < 0$}
  \STATE $X \leftarrow 1 / x$
  \STATE $N \leftarrow -n$
  \ELSE
  \STATE $X \leftarrow x$
  \STATE $N \leftarrow n$
  \ENDIF
\end{filecontents*}

\usepackage{xcolor}

% Redefine the rule colors
% WARNING: may have adverse effects on other float rule color (untested)
\makeatletter
\renewcommand\fs@ruled{\def\@fs@cfont{\bfseries}\let\@fs@capt\floatc@ruled
  \def\@fs@pre{{\color{blue}\hrule height.8pt depth0pt \kern2pt}}%
  \def\@fs@post{{\color{blue}\kern2pt\hrule\relax}}%
  \def\@fs@mid{{\kern2pt\color{blue}\hrule\kern2pt}}%
  \let\@fs@iftopcapt\iftrue}
\makeatother

\begin{document}

\section{Introduction}
\lipsum[1]

\section{My Algorithm}

\lipsum[2]

\floatname{algorithm}{\color{blue}Algorithm}
\begin{algorithm}
  \caption{\color{blue}Calculate $y = x^n$}
  \label{alg1}
  \color{blue}
  \begin{algorithmic}
    \input{\jobname.alg}
  \end{algorithmic}
\end{algorithm}

\lipsum[3-5]

\end{document}

就像你已经知道的那样,利普萨姆 仅适用于虚拟文本。文件内容 用于生成算法的外部文件(无论如何您都可以将其内联,只是展示一种很好的做法)。


我们需要三个\color命令。首先,更改单词“算法”的颜色。其次,更改标题文本的颜色;第三,更改实际算法的颜色。


规则颜色已通过修改代码进行了定制,漂浮. 这是由算法包创建新的 float 类型 algorithm

(我担心,如果有的话,这可能会对其他浮动规则产生不利影响。)


这是输出。

在此处输入图片描述

答案2

它也许对你有帮助。

\newenvironment{algocolor}{%
   \setlength{\parindent}{0pt}
   \itshape
   \color{blue}
}{}

\begin{algorithm}
  \begin{algocolor}
       \\algo lines
  \end{algocolor}
\end{algorithm}

相关内容