如何將子清單中的標籤重新格式化為「枚舉」?

如何將子清單中的標籤重新格式化為「枚舉」?

我想創建一個帶有標籤的列表LN,例如L1,,...L2L3

子列表應該有標籤L1a, L1b, L1c(對於列表中的第一項)。

我嘗試了以下方法:

\documentclass{article}
\usepackage{enumitem}

\begin{document}

\begin{enumerate}[label=\textbf{L\arabic*}]
\item Foo
\begin{enumerate}
\item Bar
\item FooBar
\item BarFoo \ref{l}
\end{enumerate}
\item \label{l} FooBarBarFoo
\item raBooF \ref{l}
\end{enumerate}

\end{document}

這給了我幾乎所需的輸出,但我在子列表中得到了標籤(a), (b), (c)...

看起來像這樣:

列舉子列表

但是,如何更改子清單的標籤以取得L1a, L1b, L1c

答案1

您可以使用(小寫字母)和帶有(本地)或(全局)\alph的計數器來代替阿拉伯數字。\theenumi[label=\textbf{\theenumi \alph*}]\setlist[enumerate, 2]{label =\theenumi \alph*}

解決方案一:(全球的)

\setlist[enumerate, 1]{label =\textbf{L\arabic*}}
\setlist[enumerate, 2]{label =\textbf{\theenumi \alph*}}

解決方案2:(當地的)

\begin{enumerate}[label=\textbf{L\arabic*}]
\begin{enumerate}[label=\textbf{\theenumi \alph*}]
\end{enumerate}
\end{enumerate}

結果:

在此輸入影像描述

微量元素:

\documentclass{article}
\usepackage{enumitem}
%\setlist[enumerate, 1]{label =\textbf{L\arabic*}}
%\setlist[enumerate, 2]{label =\textbf{\theenumi \alph*}}
\begin{document}

\begin{enumerate}[label=\textbf{L\arabic*}]
\item Foo
\begin{enumerate}[label=\textbf{\theenumi \alph*}]
\item Bar
\item FooBar
\item BarFoo \ref{l}
\end{enumerate}
\item \label{l} FooBarBarFoo
\item raBooF \ref{l}
\end{enumerate}
\end{document}

答案2

我想您不希望對第一級列表的交叉引用也以粗體顯示,只有標籤,並且第二級的標籤也不應該是粗體。事情是這樣的:

\documentclass{article}
\usepackage{enumitem}
\setlist[enumerate, 1]{label=L\arabic*, ref = L\arabic*, font =\bfseries}
\setlist[enumerate, 2]{label = \theenumi \alph*}

\begin{document}

\begin{enumerate}
\item Foo
\begin{enumerate}
\item Bar
\item FooBar
\item BarFoo \ref{l}
\end{enumerate}
\item \label{l} FooBarBarFoo
\item raBooF \ref{l}
\end{enumerate}

\end{document} 

在此輸入影像描述

相關內容