我正在使用以下代码在 Latex 中生成彩色框:
\renewenvironment{leftbar}[1][\hsize]%
{%
\def\FrameCommand%
{%
\fboxsep=\FrameSep\colorbox{Lavender!25}%
}%
\MakeFramed{\hsize#1\advance\hsize-\width\FrameRestore}%
}%
{\endMakeFramed}
\leftbar
\textbf<\textbf{Data Type}> <\textbf{Array Name}> \textbf{[RowSize] [ColumnSize]};
\endleftbar
这设置彩色框在“ \begin{document}
”之前是固定的。
\leftbar
每次,我都使用“”绘制一个框\endleftbar
——它总是具有我在上面的设置中提到的相同颜色。
但我想得到不同的颜色(其余设置与上述相同)。
看来“ \leftbar
”不把“颜色”作为参数。
有人可以指导我如何使用“ \leftbar
”生成具有不同颜色的盒子吗?
答案1
您可以在的(重新)定义中使用颜色参数leftbar
:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{xcolor}
\usepackage{framed}
\renewenvironment{leftbar}[2][\hsize]%
{%
\def\FrameCommand%
{%
\fboxsep=\FrameSep\colorbox{#2}%
}%
\MakeFramed{\hsize#1\advance\hsize-\width\FrameRestore}%
}%
{\endMakeFramed}
\begin{document}
\begin{leftbar}{green!25}
\textbf<\textbf{Data Type}> <\textbf{Array Name}> \textbf{[RowSize] [ColumnSize]};
\end{leftbar}
\begin{leftbar}{red!25}
\textbf<\textbf{Data Type}> <\textbf{Array Name}> \textbf{[RowSize] [ColumnSize]};
\end{leftbar}
\begin{leftbar}{olive!25}
\textbf<\textbf{Data Type}> <\textbf{Array Name}> \textbf{[RowSize] [ColumnSize]};
\end{leftbar}
\end{document}