如果我有一个minipage
\begin{minipage}{5cm}
content
\end{minipage}
我如何确定它的高度并将该值保存为长度?
答案1
\newlength\foo
\settoheight\foo{\begin{minipage.....
如果你还想排版小页面,你可能想把它保存在一个框中,然后说
\settoheight\foo{\usebox\mybox}
而不是为了测量目的而排版两次。
答案2
我们也可以直接使用savebox
。请注意,如果您在命令中使用它,则需要在命令外部定义框。MWE 遵循:
\newbox\hintbox
\newcommand*{\cvcomment}[2][.25em]{
\sbox\hintbox{
\begin{minipage}{\hintscolumnwidth - \separatorcolumnwidth}
\raggedleft\hintstyle{#2}
\end{minipage}
}
\usebox\hintbox
\vspace{-1.7\ht\hintbox}
}
就上下文而言,我使用它modern-cv
在左栏(日期栏)中留下评论,这就是\hintscolumnwidth
、\hintstyle
等的来源。
在上面,我hintbox
在命令外部定义了框。我在里面排版了一个小页面hintbox
,并使用显示它usebox
。关键是,既然我把它放在一个框里,我现在可以测量它的高度\ht\hintbox
并适当缩放它,以显示使用命令后出现的内容,这样框就不会占用垂直空间。