考虑以下 MWE:
\documentclass{article}
\usepackage{xcolor}
\usepackage[boxed, noline, linesnumbered]{algorithm2e}
\begin{document}
\begin{algorithm}[t]
\textcolor{red}{\If{test}{\KwRet $-1$\;}}
blah\;
blah\;
blah\;
\end{algorithm}
\end{document}
输出如下所示:
如您所见,不仅线条,而且线号也都用红色绘制。我只想将红色应用于线条。
答案1
您可以设置/更改编号的格式。在本例中,重新格式化以使用 进行设置\color{black}
。提供的设置宏是\SetNlSty
:
\documentclass{article}
\usepackage{xcolor}% http://ctan.org/pkg/xcolor
\usepackage[boxed, noline, linesnumbered]{algorithm2e}% http://ctan.org/pkg/algorithm2e
\SetNlSty{bfseries}{\color{black}}{}
\begin{document}
\begin{algorithm}[t]
\textcolor{red}{\If{test}{\KwRet $-1$\;}}
blah\;
blah\;
blah\;
\end{algorithm}
\end{document}
使用时格式选择有些奇怪,原因\SetNlSty
在于其定义algorithm2e.sty
,以及默认的\NlSty
:
\newcommand{\NlSty}[1]
{\textnormal{\textbf{\relsize{\algocf@nlrelsize}#1}}}% default definition
\newcommand{\SetNlSty}[3]{\renewcommand{\NlSty}[1]
{\textnormal{\csname#1\endcsname{\relsize{\algocf@nlrelsize}#2##1#3}}}}%