我正在处理一个彩色表格,发现各种颜色包之间存在冲突,最后在隔行中没有颜色。我按照建议做了,但似乎没有什么效果。下面是我的示例代码。
\documentclass[11pt,a4paper]{article}
\usepackage{array,ragged2e}
\usepackage[pdftex]{graphicx}
\usepackage[framemethod=TikZ]{mdframed}
\usepackage{lipsum}
\usepackage[margin=1cm]{geometry}
\usepackage{wrapfig}
\usepackage{comment}
\usepackage{parskip}
\usepackage{framed,color}
\usepackage{color}
\usepackage{colortbl}
\usepackage[table]{xcolor}
\definecolor{shadecolor}{rgb}{1,0.8,0.3}
\definecolor{lightgray}{rgb}{0.9}
\newcolumntype{P}[1]{>{\RaggedRight\hspace{0pt}}p{#1}}
% new colours
\definecolor{shadecolor}{rgb}{1,0.8,0.3}
\definecolor{lightgray}{rgb}{0.9,0.9,0.9}
\definecolor{yellow}{rgb}{1,0.5,0}
\begin{document}
\begin{mdframed}[roundcorner=10pt,leftmargin=1, rightmargin=1, linecolor=orange,outerlinewidth=1, innerleftmargin=15, innertopmargin=15,innerbottommargin=15]
\textbf{Detailed Test Table}
\centering
\rowcolors{1}{}{yellow}
\begin{tabular}{>{\rule{0pt}{.5cm}}c >{\arraybackslash}m{2cm}>{\arraybackslash}m{2cm}>{\arraybackslash}m{6cm} >{\arraybackslash}m{3cm}}
\hline
\rowcolor{orange} \textbf{data} &\textbf{dummy} &\textbf{value} &\textbf{rough} &\textbf{text}\\
\hline
\rowcolor{lightgray} rsxx & CreT & 17603472, 19141561 & twet & 17603472, 19141561\\
rs7193xx343 & TrT & 19597491, 21760908 & twer & 19597491, 21760908\\
rxx376333 & CCe & 2017r3747 & twertw & 20173747\\
\hline
\end{tabular}
\end{mdframed}
\end{document}
答案1
冲突是由于同一个包被加载了 2 次或更多次,并且使用不同的选项,而这些选项彼此冲突。这里mdframed
加载xcolor
(由于 tikz)但没有表格选项。(mdframed
也加载color
)。你加载了color
两次,这是应该避免的。另外,你的定义\definecolor{lightgray}{rgb}{0.9}
是错误的。应该是\definecolor{lightgray}{rgb}{0.9,0.9,0.9}
(它又被定义了两次)。
您可以使用以下方法之一消除冲突:
\PassOptionsToPackage{table}{xcolor}
在 之前 使用\documentclass[11pt,a4paper]{article}
。放在
\usepackage[table]{xcolor}
加载的包之前xcolor
(这里是mdframed
)- 或者将选项传递给文档本身,就像
\documentclass[11pt,a4paper,table]{article}
不添加\usepackage{xcolor}
(它已经被加载mdframed
)
以下是使用第三种方法的 MWE:
\documentclass[11pt,table,a4paper]{article}
%\usepackage[table]{xcolor}
\usepackage{array,ragged2e}
\usepackage{graphicx}
\usepackage[framemethod=TikZ]{mdframed}
\usepackage{lipsum}
\usepackage[margin=1cm]{geometry}
\usepackage{wrapfig}
\usepackage{comment}
\usepackage{parskip}
\usepackage{framed}
%
\definecolor{shadecolor}{rgb}{1,0.8,0.3}
%\definecolor{lightgray}{rgb}{0.9} % This definition is wrong should be {0.9,0.9,0.9}
\newcolumntype{P}[1]{>{\RaggedRight\hspace{0pt}}p{#1}}
% new colours
\definecolor{shadecolor}{rgb}{1,0.8,0.3}
\definecolor{lightgray}{rgb}{0.9,0.9,0.9}
\definecolor{yellow}{rgb}{1,0.5,0}
%
\begin{document}
%
\begin{mdframed}[roundcorner=10pt,leftmargin=1, rightmargin=1, linecolor=orange,outerlinewidth=1, innerleftmargin=15, innertopmargin=15,innerbottommargin=15]
\textbf{Detailed Test Table}
\centering
\rowcolors{2}{lightgray}{yellow}
%\rowcolors[\hline]{3}{green!25}{yellow!50}
\begin{tabular}{>{\rule{0pt}{.5cm}}c >{\arraybackslash}m{2cm}>{\arraybackslash}m{2cm}>{\arraybackslash}m{6cm} >{\arraybackslash}m{3cm}}
\hline
\rowcolor{red} \textbf{data} &\textbf{dummy} &\textbf{value} &\textbf{rough} &\textbf{text}\\
\hline
rsxx & CreT & 17603472, 19141561 & twet & 17603472, 19141561\\
rs7193xx343 & TrT & 19597491, 21760908 & twer & 19597491, 21760908\\
rxx376333 & CCe & 2017r3747 & twertw & 20173747\\
\hline
\end{tabular}
\end{mdframed}
\end{document}
注意:您可以考虑使用booktabs
来绘制美观的规则,而不是\hrule
。同时避免将选项传递pdftex
给包graphicx
。