我想要将一个文本块水平和垂直居中,就好像它是一个抽象的文本块一样。我该怎么做?
我尝试过这个:
\null\vfill
\begin{center}
\end{center}
\vfill\null
这正确吗?
答案1
“正确”的方式可能是
\clearpage
\vspace*{\fill}
\begin{center}
\begin{minipage}{.6\textwidth}
Text that will be justified
...
\end{minipage}
\end{center}
\vfill % equivalent to \vspace{\fill}
\clearpage
顶部垂直空间应为\vspace*
,这样它就不会在分隔符处消失。对齐文本的行宽将是正常行宽的 6/10,请更改该分数以适合您。
你也可以用类似的方式决定顶部和底部的不同空间;例如
\clearpage
\vspace*{\stretch{2}}
\begin{center}
\begin{minipage}{.6\textwidth}
Text that will be justified
...
\end{minipage}
\end{center}
\vspace{\stretch{3}}
\clearpage
将在 2/3 的比例中留下空间;这种东西对于献词页很有用,因为献词通常不在页面的中心。
如果你需要小页面中的文本像普通文本一样缩进段落,那么center
和minipage
就不合适了。这可以通过更复杂的构造来实现:
\documentclass{article}
\usepackage{lipsum}
\begin{document}
\clearpage
\vspace*{\fill}
\begin{list}{}{%
\leftmargin=.2\textwidth
\rightmargin=.2\textwidth
\listparindent=\parindent
\itemindent=\parindent
\itemsep=0pt
\parsep=0pt}
\item\relax
\lipsum[1-2]
\end{list}
\vfill % equivalent to \vspace{\fill}
\clearpage
\end{document}
该包lipsum
仅产生一些文本。