文本框居中

文本框居中

我想将文本在 \fbox 中水平居中:

\fbox{\vbox{\hbox{Words,}\hbox{words,}\hbox{and only words again}}}

我该如何做呢?

答案1

为堆栈量身定制。我在左侧显示了一个普通堆栈,在中间显示了一个底层堆栈,在右侧显示了一个中心堆栈。此外,左侧堆栈使用空格(默认)作为行尾分隔符,而在右侧 2 个堆栈中,我已将行尾 (EOL) 分隔符重置为\cr

\documentclass{article}
\usepackage{stackengine}
\begin{document}
\fbox{\Longstack{Words, words, {and only words again}}}
or 
\setstackEOL{\cr}%
\fbox{\Longunderstack{Words,\cr words,\cr and only words again}}
or 
\fbox{\Centerstack{Words,\cr words,\cr and only words again}}
\end{document}

在此处输入图片描述

行间基线跳过可以用 重置\setstackgap{L}{<length>}。还要注意,中心堆栈会\strut向每行添加一个,这样垂直居中就不会受到降部的影响。也可以通过调用 使支撑成为其他堆栈的默认设置\strutlongstacks{T}

答案2

用一个tabular

\documentclass{article}

\begin{document}
  \fbox{%
    \begin{tabular}{@{}c@{}}
     words, \\
     words,\\
     and only words again
    \end{tabular}%
    }

    \begin{tabular}{|@{\hspace{\dimexpr\fboxsep+0.5\arrayrulewidth}}c@{\hspace{\dimexpr\fboxsep+0.5\arrayrulewidth}}|}\hline
     words, \\
     words,\\
     and only words again \\\hline
    \end{tabular}%

\end{document}

在此处输入图片描述

相关内容