在 enumitem 包中的项目编号前创建一个“答案空格”

在 enumitem 包中的项目编号前创建一个“答案空格”

我们国家习惯在试卷的题目号前放一行答案,就像下面这样。我正在创建一个模板,让最近刚转用 LaTeX 的同学使用,这样他们就可以轻松实现这种列表样式。我想改进一下,这样我就可以使用这个选项,align=right同时仍然保持答案行向左对齐。这意味着\answerline随着题目号占用的空间增加,答案行的长度会自动减少。你有更好的方法吗?

\documentclass[preview, border=0.5cm]{standalone}

\usepackage{enumitem}

\newcommand{\answerline}{\makebox[0.5in]{\hrulefill}}

\begin{document}
\begin{enumerate}[noitemsep, label = {{\protect\answerline~\arabic*.}},align=left, leftmargin=*]
\item 
\item 
\item 
\item 
\item 
\item 
\item 
\item 
\item 
\item 
\end{enumerate}
\end{document}

在此处输入图片描述

我希望项目右对齐,但线条向左对齐。

在此处输入图片描述

答案1

另一种方法可能是随着项目标签宽度的增加而减少行宽,这也可以节省一些水平空间。

\documentclass[preview, border=0.5cm]{standalone}
\usepackage{enumitem,calc}
\begin{document}
\begin{enumerate}[noitemsep, 
                  label = {{\protect\makebox[0.5in - \widthof{\arabic*}]{\hrulefill}\arabic*.}},
                  align=left, 
                  leftmargin=*]
\item 
\item 
\item 
\item 
\item 
\item 
\item 
\item 
\item 
\item 
\item
\item
\end{enumerate}
\end{document}

在此处输入图片描述

相关内容