创建枚举描述样式环境

创建枚举描述样式环境

我一直在尝试创建一个列表环境来生成执行以下操作的内容:

  1. 它有一个计数器(如枚举环境)。

  2. 每项内容的第一行是该项的概述(可能以粗体显示)。

  3. 有些项目除了第一行之外没有其他内容,而其他项目则有更多描述。描述与其上方的标题对齐。

以下是我的尝试:

\newcounter{numberdesc}
\newenvironment{numberdescription}{\begin{list}{}{%
  \renewcommand{\makelabel}{\textbf{\thenumberdesc.\hfill}}}}{%
  \end{list}}
\newcommand{\descitem}[1]{\stepcounter{numberdesc}\item\textbf{#1}\newline}

\begin{numberdescription}
\descitem{First item}
  has some description below it
\descitem{Second item does not}
\descitem{Third item}
  also has description
\end{numberdescription}

但我知道这相当粗糙(尤其是\newline在替换的定义中\item)。

之前有人建议我这个enumitem包可以满足我的要求,但据我所知,它并没有按照我想要的方式对齐描述文本。具体来说:每个项目都有一个编号和一个标题,项目的文本应该与标题对齐,而不是与编号对齐。

我希望它产生类似以下的东西(以更粗糙的方式产生):

在此处输入图片描述

答案1

\par一个简单的解决方案是在标题后添加。您可以按如下方式构建它:

示例输出

\documentclass{article}

\newcounter{numberdesc}
\newenvironment{numberdescription}{\begin{list}{}{%
  \renewcommand{\makelabel}{\textbf{\thenumberdesc.\hfill}}}}{%
  \end{list}}
\newcommand{\descitem}[1]{\stepcounter{numberdesc}{\item\textbf{#1}\par}}

\begin{document}

\noindent Text to show alignment.
\begin{numberdescription}
\descitem{First item}
  has some description below it
\descitem{Second item does not}
\descitem{Third item}
  also has description
\descitem{Fourth item}
  has some description below it
\descitem{Fifth item does not}
\descitem{Sixth item}
  also has description
\descitem{Seventh item}
  has some description below it
\descitem{Eight item does not}
\descitem{Ninth item is so long that it fills more than one line, but
that doesn't give us problems}
also has description
\descitem{Tenth item}
  has some description below it
\end{numberdescription}

\end{document}

相关内容