enumerate
考虑在标准(article
)环境中使用标准环境abstract
:
\begin{abstract}
We discuss several exciting topics:
\begin{enumerate}
\item Topic 1, explained at such length that the text produces a line break,
\item Topic 2.
\end{enumerate}
\end{abstract}
我的抱怨是enumerate
环境不尊重抽象环境的边距减少。(特别是,索引号出现在左边距的左侧,而文本则包裹在右边距的右侧。)
据推测,我可以将enumerate
环境包装在 a 中minipage
,以强力控制边距。正确的做法是什么?
为了详细解释这个问题,您可以看下面的例子:
您可能注意到,这不是由 article 类生成的。但是,该类确实借用了传统 article 类的抽象代码(我认为有一些无关紧要的变化)。
答案1
“我的抱怨是枚举环境不尊重抽象环境的边距减少。(特别是,索引号出现在左边距的左侧,而文本则包裹在右边距的右侧。)”
在article
课堂上,列出以下环境enumerate
做尊重环境的边距缩减abstract
——看看我的例子。(您可能误以为摘要第一行的缩进是环境左边距的一般缩进。)
\documentclass{article}
\usepackage{lipsum}
\begin{document}
\begin{abstract}
\lipsum[1]
\begin{enumerate}
\item Topic 1, explained at such length that the text \emph{really}
produces a line break,
\item Topic 2.
\end{enumerate}
\end{abstract}
\section{foo}
\lipsum[2]
\end{document}
答案2
如果你真的必须在你的使用列表环境中abstract
,我建议使用enumitem
包裹管理水平间距或边距。请注意,代码片段的输出结果与预期一致,因为“第一段”(以“我们讨论...”开头)实际上缩进了长度\parindent
。无论哪种方式,以下是您可能想要的一种可能性:
\documentclass{article}
\usepackage{showframe}% http://ctan.org/pkg/showframe
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\usepackage{enumitem}% http://ctan.org/pkg/enumitem
\begin{document}
\begin{abstract}
\lipsum[1]
We discuss several exciting topics:
\begin{enumerate}[label={Topic~\arabic*:},leftmargin=*]
\item \lipsum[2]
\item \lipsum[3]
\end{enumerate}
And here we have the end of the abstract.
\end{abstract}
\end{document}
其他一些注意事项:
- 由于
\lipsum
排版段落,它会\par
在每个段落的末尾发出。这使得下面的段落缩进\parindent
,正如您从 MWE 中看到的那样。 enumerate
由于环境的结尾和最后一句/段落的开头之间没有间隙,\parindent
因此看不到。如果您想要段落缩进,请\par
在 的末尾发出enumerate
,或使用\indent
。- 我已经通过使用设置
Topic~\arabic*:
的功能使列表自行枚举。enumitem
label
- 另外,为了让左边距与文本块齐平(在
abstract
),我使用了leftmargin=*
。还有其他对齐选项可供选择。
showframe
用于突出显示文本块边缘,而lipsum
提供了一些虚拟文本。
尝试复制你的摘要没有任何软件包依赖关系,请考虑以下几点:
\documentclass{article}
\begin{document}
\begin{abstract}
This paper studies the one-way communication complexity of the \textit{subgroup
membership problem\/}, a classical problem closely related to basic questions in quantum
computing. Here Alice receives, as input, a subgroup~$H$ of a finite group~$G$; Bob receives
an element $y\in G$. Alice is permitted to send a single message to Bob, after which he must
decide if his input~$y$ is an element of~$H$. We establish the following bounds on the classical
communication complexity of this problem in the bounded-error setting: \par \medskip
\addtolength{\leftskip}{1.5em} \setlength{\parindent}{-1.5em}
\makebox[1.5em][l]{1.}The problem can be solved with $\mathcal{O}(\log|G|)$-bit communication with the promise that~$H$ is normal. \par \medskip
\makebox[1.5em][l]{2.}The problem can be solved with $\mathcal{O}(d_{\max}-\log|G|)$-bit communication, where~$d_{\max}$ is the maximum
degree of an irreducible complex representation of~$G$. \par \medskip
\makebox[1.5em][l]{3.}For any prime~$p$ not dividing~$|G|$, the problem can be solved with $\mathcal{O}(\log|G|+d_{\max}\cdot\log p)$-bit
communication, where~$d_{\max}$ is the maximum degree of an irreducible $\mathbf{F}_p$-representation of~$G$.
\end{abstract}
\end{document}
这样,您可以通过物理调整左边距 ( \leftskip
) 和随附的段落缩进 ( \parindent
) 来排版枚举以模拟enumerate
。我已经对编号进行了硬编码,但也可以将其制成计数器。但是,只有在它们可能经常重新排序,或者您想通过\label
和\ref
命令引用它们时,这才是必要的。此外,我在项目之间放置了 ,\medskip
使其看起来像枚举。但是,一个\par
也足够了。