在我的文档中,我发现当我调用\upbracefill
表格单元格时,生成的括号并未占据单元格的整个宽度。
在创建了产生此行为的最小示例(如下所示)之后,我发现问题在于包含了 colortbl 包。
当我从我的一个文档中删除此包时,由此产生的括号 \upbracefill
确实填满了整个单元格的宽度。
但是,对于我的文档,我需要colortbl
。
附件是复制此行为的示例。您可以尝试以两种方式构建此小文档,包括带和不带行\usepackage{colortbl}
。
我需要 的正常行为来\upbracefill
填充整个单元格。如何使用 包来实现这一点colortbl
?
我正在使用 LaTeX 版本 3.1415926-2.6-1.40.14 (TeX Live 2014/dev)
\documentclass[letterpaper]{book}
\usepackage{colortbl} % TRY COMMENTING THIS OUT, TOO
\begin{document}
\begin{tabular}{ l llll llll }
letters: & a & b & c & d & e & f & g & h \\
blah & \multicolumn{8}{c}{\upbracefill} \\
blah & \multicolumn{8}{l}{\upbracefill} \\
\end{tabular}
\end{document}
答案1
您可以\upbracefill
手动构建它:
\documentclass{article}
\usepackage{colortbl}
\begin{document}
\begin{tabular}{ *{9}{l} }
letters: & a & b & c & d & e & f & g & h \\
blah & \multicolumn{8}{c}{\raisebox{.5\normalbaselineskip}[0pt][0pt]{$\underbrace{\phantom{abcdefgh}\hspace*{14\tabcolsep}}$}} \\
blah & \multicolumn{8}{l}{\raisebox{.5\normalbaselineskip}[0pt][0pt]{$\underbrace{\phantom{abcdefgh}\hspace*{14\tabcolsep}}$}} \\
\end{tabular}
\end{document}
使用\phantom
隐藏等效的列条目,而每列之间有 2\tabcolsep
个。如果测量结果有点难以处理,您可以插入长度以大致匹配宽度,例如\hspace*{12.5em}
本例:
\documentclass{article}
\usepackage{colortbl}
\begin{document}
\begin{tabular}{ *{9}{l} }
letters: & a & b & c & d & e & f & g & h \\
blah & \multicolumn{8}{c}{\raisebox{.5\normalbaselineskip}[0pt][0pt]{$\underbrace{\phantom{abcdefgh}\hspace*{14\tabcolsep}}$}} \\
blah & \multicolumn{8}{l}{\raisebox{.5\normalbaselineskip}[0pt][0pt]{$\underbrace{\hspace*{12.5em}}$}} \\
\end{tabular}
\end{document}
有关水平宽度的更多信息,请参阅有哪些命令可以控制水平间距?
答案2
与。{NiceTabular}
nicematrix
\documentclass[letterpaper]{book}
\usepackage{nicematrix}
% \usepackage{colortbl} % the output is the same with or without colortbl
\begin{document}
\begin{NiceTabular}{*{9}{l}}
letters: & a & b & c & d & e & f & g & h \\
blah & \\
blah & \\
\CodeAfter
\UnderBrace[yshift=-2mm]{1-2}{2-9}{}
\UnderBrace[yshift=-2mm]{1-2}{3-9}{}
\end{NiceTabular}
\end{document}
无论有没有包,输出都是相同的colortbl
(但是,nicematrix
有自己的工具来为单元格、行和列着色)。