输入文本的可变框大小

输入文本的可变框大小

我怎样才能制作一个框架框,使得当在正确的位置添加间距时,框的高度正好是 15 厘米?明确地说,我如何定义一个\newcommand接收三个输入{A}{B}{C}并显示一个框架框,其值是x根据下方的 A、B 和 C 的大小计算出来的,以使框正好是 15 厘米:

A
\vspace{x}
B
\vspace{x}
C

由于我尝试一次学习一件事,所以更喜欢使用 LaTeX 答案,但您也可以随意发布其他解决方案!

答案1

您可以用来\vfill填充空间,将内容拉伸到整个高度,例如

\documentclass{article}
\newcommand*{\mybox}[3]{%
  \fbox{
    \parbox[t][15cm]{\textwidth}{%
      #1
      \vfill
      #2
      \vfill
      #3
    }
  }
}
\begin{document}
\noindent
\mybox{A}{B}{C}
\end{document}

我使用了可选的高度参数\parbox和顶部对齐。虽然顶部对齐是默认设置,但没有顶部对齐,id 就无法工作。带有所有可选参数t的语法是\parbox

\parbox[position][height][inner-pos]{width}{text}

parbox(即内箱)具有所需的尺寸。如果您希望“外部”高度为 15 厘米,则可以使用包装计算内部高度calc

\vfill相当于\vspace{\fill}插入尽可能可拉伸的空间,从而填充 parbox。插入两次后,它们均等地共享可用空间。

框

相关内容