在页面开头添加垂直空间

在页面开头添加垂直空间

我想,在页面上写任何内容之前,首先添加一些垂直空间。

最小(非)工作示例:

\documentclass{article}
\begin{document}

\vspace{250px}
I want to be further down on the page :(

\vspace{250px}
Haha! Sucker :D
\end{document}

为什麽???

我怎样才能使第一个\vspace像第二个一样工作?

答案1

\vspace正如您所看到的,页面开头的空格被删除。该命令\vspace*添加了空格不是已删除。

\documentclass{article}
\begin{document}

\vspace*{250px}
I want to be further down on the page :(

\vspace{250px}
Haha! Sucker :D
\end{document}

答案2

分页符处的空格会被忽略,因为通常人们不想要它们。TeX 从零开始计数,因此第一页分页之后。:)

解决方案是发行\vspace*而不是\vspace

我建议不要使用 ,px因为这不是具有 CSS 背景的人所期望的。而是使用cmmm或者in或 的倍数\baselineskip

\vspace*{2cm}
\vspace*{4\baselineskip}

的默认值1px1bp(其中 72bp = 1in);这是一个特殊的测量单位,可以针对特定应用程序量身定制,这些应用程序涉及仅在屏幕上显示的文档。例如,要使文档的宽度达到 96dpi 的 1200 像素屏幕,可以通过几何学纸张宽度为 1200px

\pdfpxdimen=1in % just to start the computation
\divide\pdfpxdimen by 96 % 96 px are now 1in
\geometry{paperwidth=1200px}

对于“纸质”文件来说,这无关紧要。

答案3

除了这些建议之外\vspace*,您还可以发出“nothing”命令,让后续的\vspaces 按预期排版。此“nothing”命令可以是\mbox{}(一个空框)或\null,前提是您留出一个空行 (或\par)以处于垂直模式。

更具体地说,你需要

\documentclass{article}
\begin{document}
\mbox{}% or \null; note the blank line below. Alternative, add \par on this line.

\vspace{250px}
I want to be further down on the page :(
\end{document}

虽然\null是更好的选择——它不需要空行甚至\par

答案4

我 做过尝试将其作为评论发布,但不合适,甚至不合适更简洁的版本... :-(

我偶然发现了这个问题,在阅读答案和评论时,我认为值得添加对以下两个问题的引用:

此外,请注意@egreg 的评论,建议避免使用\mbox{},而使用\null,这并不完全正确:确实\null不需要后面跟一个空行(或\par);确实它效率更高,因为它避免了开始一个新段落并添加一个级别的装箱;但它不是确实,这两种解决方案会产生不同的结果。事实上,这两种解决方案最终都会在主垂直列表中添加以下内容(为简单起见,省略了一些项目):

  • 胶水\topskip;

  • 零高度\hbox

  • 的参数中指定的跳过\vspace

  • 胶水\parskip;

  • 胶水\baselineskip;

  • 接下来是什么。

(上述说法可以通过 轻松验证\showlists。)

相关内容