如何更改内部 \item 中的编号?

如何更改内部 \item 中的编号?
\documentclass[a4paper,11pt]{report}
\usepackage{enumitem}
\renewcommand{\labelenumi}{\bf Matter \arabic{enumi}.}
\renewcommand{\labelenumii}{\bf Matter \arabic{enumi}.\arabic{enumii}.}
\begin{document}

There are \ref{1-item} main matters in total.

\begin{enumerate}
\item bla1
\item bla2
\item This matter consists of \ref{2-item} submatter.
\begin{enumerate}
\item bla3
\item bla4\label{2-item}
\end{enumerate}
\item bla4 \label{1-item}
\end{enumerate}

\end{document}

\ref{2-item} = 3b\ref{2-item}应该是2。我们如何才能改变这种情况?

答案1

改变\labelenumi等确实会影响参考值的存储方式。

使用包时enumitem,不需要修改\labelenumi等,而是用更改列表设置\setlist

label*=...将父列表级别标签附加到当前项目标签,并ref=更改参考格式。

请注意,\ref在此上下文中不提供可扩展的数字,以防\ifnum在更详细的文档中需要某些数字等。

\documentclass[a4paper,11pt]{report}
\usepackage{enumitem}

\setlist[enumerate]{leftmargin=*}
\setlist[enumerate,1]{label={\bfseries Matter \arabic*.},ref=\arabic*}}
\setlist[enumerate,2]{label*={\bfseries\arabic*},ref={\arabic*}}
\begin{document}

There are \ref{1-item} main matters in total.

\begin{enumerate}
\item bla1
\item bla2
\item This matter consists of \ref{2-item} submatter.
\begin{enumerate}
\item bla3
\item bla4\label{2-item}
\end{enumerate}
\item bla4 \label{1-item}
\end{enumerate}

\end{document}

在此处输入图片描述

答案2

如果文档仍然需要在某处使用“基本”枚举列表,那么使用包的机制enumitem来定义一个新的枚举类列表(如下matter例所示)可能是一个好主意,它 (a) 将标签“Matter”添加到枚举项的前缀,并且 (b) 将“Matter”标签和数字都排版为粗体。以下示例显示了如何执行此操作,最多可进行 3 级枚举。

在此处输入图片描述

\documentclass[a4paper,11pt]{report}
\usepackage{enumitem}

\newlist{matter}{enumerate}{3}  % create a new enumerated list
\setlist[matter,1]{label={\bfseries Matter \arabic*.},
                   ref=\arabic*,
                   leftmargin=*}
\setlist[matter,2]{label={\bfseries Matter \thematteri.\arabic{matterii}.}, 
                   ref=\arabic*}
\setlist[matter,3]{label={\bfseries Matter \thematteri.\thematterii.\arabic{matteriii}.},
                   ref=\arabic*}

\begin{document}
\noindent
There are \ref{1-item} main matters in total.

\begin{matter}
\item bla1
\item bla2
\item bla3 -- This matter features \ref{2-item} submatters.
   \begin{matter}
   \item bla31
   \item bla32\label{2-item}
      \begin{matter}
      \item bla321
      \item bla322
      \end{matter}
   \end{matter}
\item bla4 \label{1-item}
\end{matter}

\end{document} 

相关内容