自定义枚举环境

自定义枚举环境

我想要不同的枚举/逐项列举环境,它们仅在颜色上有所不同:

像这样:

\begin{redenum}
\item 1
\item 2
\begin{blueenum}
\item 2.2
\end{blueenum}
\end{redenum}

实现这一目标的明智方法是什么?

答案1

以下是两种包装解决方案enumitem,一种用于彩色物品标签,一种用于彩色物品标签和物品主体:

\documentclass{book}
\usepackage{xcolor} 
\usepackage{enumitem}

\begin{document}

\begin{enumerate}[label=\arabic*. , leftmargin=*, format=\color{red}]
\item Blah blah blah. Blah blah blah.
\item Some other text. Some other text.
\begin{enumerate}[label*=\arabic*. , leftmargin=*, format=\color{blue}]
\item A sub item
\end{enumerate}
\item Still another text. 
\end{enumerate}
\vskip1cm
\begin{enumerate}[label=\arabic*. , leftmargin=*, before=\color{red}]
\item Blah blah blah. Blah blah blah.
\item Some other text. Some other text.
\begin{enumerate}[label*=\arabic*. , leftmargin=*, before=\color{blue}]
\item A sub item
\end{enumerate}
\item Still another text. 
\end{enumerate}

\end{document} 

在此处输入图片描述

添加:您可以同时使用这两个键format,并before为项目标签和项目主体设置不同的颜色。

编辑:这是定义彩色列表环境的代码,每个级别都有不同的颜色:

\documentclass{book}
\usepackage{xcolor}
\usepackage{enumitem}
\newlist{colenumerate}{enumerate}{2}
\setlist[colenumerate,1]{label=\arabic*. , leftmargin=*, before=\color{orange}, font=bfseries, format=\color{red}}
\setlist[colenumerate,2]{label*=\arabic*. , leftmargin=*, before=\color{violet}, font=\bfseries, format=\color{blue}}

\begin{document}

\begin{colenumerate}
\item Blah blah blah. Blah blah blah.
\item Some other text. Some other text.
     \begin{colenumerate}
     \item A sub item. 
     \end{colenumerate}
\item Still another text.
\end{colenumerate}

\end{document} 

在此处输入图片描述

相关内容