我想,在页面上写任何内容之前,首先添加一些垂直空间。
最小(非)工作示例:
\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 背景的人所期望的。而是使用cm
,mm
或者in
或 的倍数\baselineskip
:
\vspace*{2cm}
\vspace*{4\baselineskip}
的默认值1px
是1bp
(其中 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”命令,让后续的\vspace
s 按预期排版。此“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
。)