我怀疑这可能是一个错误,但我不完全确定,所以在联系相关的软件包维护人员之前,我在这里发布了帖子以征求您的意见。
\documentclass{beamer}
\usepackage{tcolorbox}
\usepackage{tabularx}
\usepackage{colortbl}
\begin{document}
\begin{frame}
\begin{tcolorbox}[tabularx={X|X}]
1 & 2 \\
3 & 4
\end{tcolorbox}
\begin{tabularx}{\textwidth}{X|X}
\hline
1 & 2 \\\cline{2-2}
3 & 4 \\
\hline
\end{tabularx}
\end{frame}
\end{document}
在上面的代码中,\cline
命令无法按预期工作。当tabularx
在 tcolorbox 中使用键时会发生这种情况,并且只发生在 中beamer
。如果您将类切换为 ,那么article
cline 就可以正常工作。
这是一个错误还是我遗漏了什么?
答案1
这与
尽管这可能最初并不明显:-)
\cline
您可以通过添加字距来保护。
\documentclass{beamer}
\usepackage{tcolorbox}
\usepackage{tabularx}
\usepackage{colortbl}
\makeatletter
\def\@cline#1-#2\@nil{%
\omit
\@multicnt#1%
\advance\@multispan\m@ne
\ifnum\@multicnt=\@ne\@firstofone{&\omit}\fi
\@multicnt#2%
\advance\@multicnt-#1%
\advance\@multispan\@ne
\leaders\hrule\@height\arrayrulewidth\hfill\kern\z@
\cr
\noalign{\vskip-\arrayrulewidth}}
\makeatother
\begin{document}
\begin{frame}
\begin{tcolorbox}[tabularx={X|X}]
1 & 2 \\
3 & 4
\end{tcolorbox}
\begin{tabularx}{\textwidth}{X|X}
\hline
1 & 2 \\\cline{2-2}
3 & 4 \\
\hline
\end{tabularx}
\end{frame}
\end{document}