运行以下 MWE 将得到丑陋的排版,我认为这是由于所有这些的高度不同造成的\parbox
。
\parbox
我的问题是:由于无法预见所有内容,如何使\parbox
同一行中的所有内容具有相同的高度(例如,最高框的高度),而没有多余或较少的垂直空间。
梅威瑟:
\documentclass[a4paper]{article}
\usepackage{xcolor}
\begin{document}
\fboxsep=0pt
\fbox{%
\colorbox{yellow!30}{\fbox{\parbox[c]{.5in}{M}}}
\colorbox{yellow!30}{\fbox{\parbox[c]{1in}{M\\M}}}
\colorbox{yellow!30}{\fbox{\parbox[c]{1.5in}{M\\M\\M}}}
\colorbox{yellow!30}{\fbox{\parbox[c]{2in}{M\\M\\M}}}%
}
\end{document}
答案1
找到最高盒子的高度可能很棘手。一种解决方案是将所有盒子放在一个保存框内。请注意,总高度等于高度(基线以上)加上深度(基线以下)。
\documentclass[a4paper]{article}
\usepackage{xcolor}
\newlength{\maxheight}
\begin{document}
\sbox0{\parbox[c]{.5in}{M}\parbox[c]{1in}{M\\M}\parbox[c]{1.5in}{M\\M\\M}}%
\setlength{\maxheight}{\dimexpr \ht0+\dp0}%
\fboxsep=0pt
\noindent\fbox{%
\colorbox{yellow!30}{\fbox{\parbox[c][\maxheight][c]{.5in}{M}}}
\colorbox{yellow!30}{\fbox{\parbox[c][\maxheight][c]{1in}{M\\M}}}
\colorbox{yellow!30}{\fbox{\parbox[c][\maxheight][c]{1.5in}{M\\M\\M}}}
\colorbox{yellow!30}{\fbox{\parbox[c][\maxheight][c]{2in}{M\\M\\M}}}%
}
\end{document}