新版本的 colortbl 包中彩色表格的布局被破坏

新版本的 colortbl 包中彩色表格的布局被破坏

我们在使用 colortbl 包的新版本时遇到了麻烦,它破坏了我们彩色表格的布局。使用 colortbl 包的新版本 (2012/02/13 v1.0a) 时,布局完全被破坏了:

在此处输入图片描述

旧版本(2001/02/13 v0.1j)提供了一个漂亮的彩色表格,如下图所示:

在此处输入图片描述

以下是重现上述表格的 MWE:

\documentclass{article}

\usepackage[table]{xcolor}
\usepackage{colortbl}
\rowcolors{1}{orange}{white} 
\arrayrulecolor{red}

\begin{document}

\begin{tabular}{|lcr|}
\firsthline
\multicolumn{3}{|>{\columncolor{red}}c|}{Table Header} \\
Debian & Ubuntu & Arch Linux \\
Jessie & Trusty Tahr & Rolling Release \\
\lasthline
\end{tabular}%

\begin{enumerate}
\item Even if the \texttt{columncolor} of the first row is red the color is
ignored completely.
\item The value „Jessie“ is not visible (it's in the pdf but with same color
as the background).
\item There is an orange box in the first column at the end of the table.
\item If \texttt{hline} is used issue 2 and 3 don't occur.
\end{enumerate}

\end{document}

现在我们不知道为什么 colortbl 包(或者可能是 xcolor 包?)的行为会发生如此剧烈的变化。

对于此问题的任何帮助/建议都将不胜感激。

答案1

我没有发现可能的错误(可能是colortbl),但同时你应该看看包tabu。这改进了表和数组包的主要功能,并且似乎解决了您的问题。

变化

  • tabu使用以下方式加载包\usepackage{tabu}
  • colortbl如果您使用,则不需要单独加载包\usepackage[table]{xcolor}
  • \begin{tabular}将...替换\end{tabular}\begin{tabu}...。\end{tabu}其他规格可保留。
  • 使用\taburowcolors[2]{orange..white}而不是\rowcolors{1}{orange}{white},其中[2]是第一行要着色的行。

目前不需要其他更改。

这是我的完整代码

\documentclass{article}
\usepackage[table]{xcolor}
\usepackage{tabu}
\taburowcolors[2]{orange..white} 
\arrayrulecolor{red}

\begin{document}
\begin{tabu}{|lcr|}
\firsthline
\multicolumn{3}{|>{\columncolor{red}}c|}{Table Header} \\
Debian & Ubuntu & Arch Linux \\
Jessie & Trusty Tahr & Rolling Release \\
\lasthline
\end{tabu}%
\end{document} 

还有

结果

在此处输入图片描述

相关内容