我怎样才能垂直居中一个元素,而不是整个组

我怎样才能垂直居中一个元素,而不是整个组

因此我可以vplace从垂直和水平方向将一个组与环境置于中心memoir

\begin{vplace}[0.7]
    \begin{center}
        some text \\
        more text \\
        a third line of text
        \vspace{0.25in} \hrule \vspace{0.25in} 
        {\Huge LARGER TEXT }
        \vspace{0.25in} \hrule \vspace{0.25in} 
        some other text
    \end{center}
\end{vplace}

但由于元素垂直不平衡,因此LARGER TEXT在页面上没有垂直居中。

我怎样才能将其置于中心LARGER TEXTsome text \\ more text \\ a third line of text围绕some other text它移动?


当然,这是一个例子,我实际使用的元素之间的差异更加明显。

答案1

我会在这里使用TikZ以及current page由以下扩展的节点系列:tikzpagenodes用于将元素定位到页面内的绝对位置的包:

\documentclass{memoir}
\usepackage{tikzpagenodes}
\usepackage{showframe}
\usetikzlibrary{positioning,calc}

\begin{document}

\begin{tikzpicture}[remember picture,overlay,every node/.append style={inner sep=0pt}]
\node[font=\Huge] 
  (center)
  at (current page text area.center)
  {LARGER TEXT};
\node[above=of center,align=center]
  (above)  
  {some text \\
  more text \\
  a third line of text
  };
\node[below=of center,align=center]
  (below)  
  {Some other text};
\draw
  ([xshift=-0.5\textwidth]$ (above.south)!0.5!(center.north) $ ) -- ++(\textwidth,0pt)
  ([xshift=-0.5\textwidth]$ (below.north)!0.5!(center.south) $ ) -- ++(\textwidth,0pt);  
\end{tikzpicture}

\end{document}

结果:

在此处输入图片描述

使用库中的节点键,positioning您可以轻松控制将文本放置在所需位置的位置。例如,您可以below=25pt of center将节点定位在节点25pt下方center

相关内容