我将其用于enumitem
水平列表。但是,我想将项目分散到整行。我尝试使用wide
参数,但它会在标签和文本之间留出空间。我可以使用 调整绝对值itemjoin
,但考虑到项目数量及其文本长度,应该对所有列表重新执行此操作。有没有办法自动完成此操作?
\documentclass{article}
\usepackage[inline]{enumitem}
\begin{document}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam eget ligula eu lectus lobortis condimentum. Aliquam nonummy auctor massa. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nulla at risus. Quisque purus magna, auctor et, sagittis ac, posuere eu, lectus. Nam mattis, felis ut adipiscing.
List:
\begin{enumerate*}[before=\noindent, wide=\parindent]
\item Item X
\item Item Y
\item Item Z
\end{enumerate*}
Desired list:
\begin{enumerate*}[before=\noindent, itemjoin = \hspace{0.32\linewidth}]
\item Item X
\item Item Y
\item Item Z
\end{enumerate*}
\end{document}
答案1
您可以尝试使用itemjoin=\hspace{10pt plus 1fill}
在项目之间获取 10pt 的最小宽度(我添加了它~
以避免在此位置出现换行符):
\documentclass{article}
\usepackage[inline]{enumitem}
\begin{document}
\noindent\hrule
\bigskip
\begin{enumerate*}[before=\noindent, itemjoin=\hspace{10pt plus 1fill}]
\item Item~X
\item Item~Y
\item Item~Z
\end{enumerate*}
\bigskip
\begin{enumerate*}[before=\noindent, itemjoin=\hspace{10pt plus 1fill}]
\item Item~S
\item Item~T
\item Item~U
\item Item~V
\item Item~W
\item Item~X
\item Item~Y
\item Item~Z
\end{enumerate*}
\bigskip
\begin{enumerate*}[before=\noindent, itemjoin=\hspace{10pt plus 1fill}]
\item This is a long item
\item This is an even longer item that requires a lot of space
\item This is also a long item
\end{enumerate*}
\end{document}