center 和 \centering 都会在上方添加空间; \centerline 不会

center 和 \centering 都会在上方添加空间; \centerline 不会

nag软件包建议我使用centerLaTeX 中的环境,而不是 TeX\centerline命令。

然而,当我这样做时,我发现前者在该行上方插入了一个空白行(在我的情况下),而后者却没有。

我更喜欢使用“正确的” LaTeX 环境,但我不想要额外的空行。

\centering按照建议尝试了这里,但上面仍然增加了空间,尽管该链接表明不应该这样做。

我正在letter课堂上这样做,看看是否有什么不同。

答案1

您实际上并不想要\centerline不允许换行并且其行为可能会令人惊讶的东西。

我真不明白为什么你要让某个东西在一段对齐的文本中居中而不给它留出一些空间。但如果你真的坚持,\centering这是正确的解决方案。它没有添加比正常段落开头更多的垂直空间。如果您使用非零 parskip,那么您就是自己惹的麻烦。

这是一种获取center环境的方法,即使设置了非零的 parskip,它也不会在其周围添加垂直空间。

不要使用非零 parskip,您的读者会感激的。

\documentclass{article}
% \usepackage{parskip}

\newenvironment{nscenter}
 {\parskip=0pt\par\nopagebreak\centering}
 {\par\noindent\ignorespacesafterend}

\begin{document}

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut
purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis.

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut
purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis.
\begin{nscenter}
\bfseries Here's some short material\\ I wanted centered
\end{nscenter}
Curabitur dictum gravida mauris. Nam arcu libero, nonummy eget,
consectetuer id, vulputate a, magna. Donec vehicula augue eu
neque. Pellentesque habitant morbi tristique senectus et netus et

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut
purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis.
\end{document}

以下是结果(感谢 A. Ellett 提供的宝贵文本),首先是零 parskip

在此处输入图片描述

然后使用非零 parskip(通过取消注释源代码中的行获得)

在此处输入图片描述

答案2

您可以使用

\hspace*{\fill}This is my content\hspace*{\fill}

如果只是一条线居中。

或者,由于center环境是根据 定义的\trivlist,您可以使用 的定义来\trivlist撤消不需要的额外空格。

\documentclass{article}
\pagestyle{empty}
\begin{document}

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut
purus elit, vestibulum ut, placerat ac, adipiscing vitae,     felis.
%%
\newline\hspace*{\fill}
        \textbf{Here's some short material I wanted centered}
\hspace*{\fill}\newline
%%
Curabitur dictum gravida mauris. Nam arcu libero, nonummy eget,
consectetuer id, vulputate a, magna. Donec vehicula augue eu
neque. Pellentesque habitant morbi tristique senectus et netus et


\noindent\textbf{Here's a slew of stuff to center without added whitespace:}
\vspace{\dimexpr-2\parsep-2\parskip\relax}%
\begin{center}
Nam dui ligula, fringilla a, euismod sodales, sollicitudin vel,
wisi. Morbi auctor lorem non justo. Nam lacus libero, pretium at,
lobortis vitae, ultricies et, tellus. Donec aliquet, tortor sed
accumsan bibendum, erat ligula aliquet magna,
\end{center}
\vspace{\dimexpr-2\parsep-2\parskip\relax}%
%%
\textbf{Back to regular formatting:}    
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut purus
elit, vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur
dictum gravida mauris. 
\end{document}

在此处输入图片描述

相关内容