我喜欢让表格中的第一行使用tcolorbox
选项tabularx
,使其颜色与其他行不同。我尝试使用\rowcolor{<color>}
,但收到错误:
放错 \noalign。
如果我\\
之前添加\rowcolor{...}
,错误就会消失,但是正如预期的那样,引入了新的空行...这是一个错误还是我错过了什么?MwE,显示问题如下。
\documentclass[border=5mm,
preview]{standalone}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[dvipsnames,svgnames,table]{xcolor}
\usepackage{makecell,tabularx}
\newcolumntype{L}{>{\raggedright\arraybackslash}X}
\usepackage[many]{tcolorbox}
\newtcolorbox{tctabularx}[1]{%
enhanced,
fonttitle=\sffamily\bfseries, fontupper=\small\sffamily,
arc=0mm,
colback=yellow!10!white, colframe=red!50!black,
#1 }% end tctabularx
\begin{document}
\begin{tctabularx}{tabularx={L|L}}
\rowcolor{yellow!30!white}
\thead{FIR}
& \thead{IIR} \\
\hline
končni impulzni odziv $h[n]$
& neskončni impulzni odziv $h[n]$ \\
\hline
sistemska funkcija je polinom
& sistemska funkcija je racionalna\newline
(ulomek dveh polinomov) \\
\hline
zahtevnejša izvedba
& manj zahtevna izvedba \\
\end{tctabularx}
\end{document}
答案1
尝试before upper app={\rowcolor{yellow!30!white}
将第一行之前输入的关键代码tabularx
发出去。
(参见当前(3.72)手册的第 18.1 节“钩子” tcolorbox
)
\documentclass[border=5mm,
preview]{standalone}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[dvipsnames,svgnames,table]{xcolor}
\usepackage{makecell,tabularx}
\newcolumntype{L}{>{\raggedright\arraybackslash}X}
\usepackage[many]{tcolorbox}
\newtcolorbox{tctabularx}[1]{%
enhanced,
fonttitle=\sffamily\bfseries, fontupper=\small\sffamily,
arc=0mm,
colback=yellow!10!white, colframe=red!50!black,
#1,before upper app={\rowcolor{yellow!30!white}}
}% end tctabularx
\begin{document}
\begin{tctabularx}{tabularx={L|L}}
\thead{FIR}
& \thead{IIR} \\
\hline
končni impulzni odziv $h[n]$
& neskončni impulzni odziv $h[n]$ \\
\hline
sistemska funkcija je polinom
& sistemska funkcija je racionalna\newline
(ulomek dveh polinomov) \\
\hline
zahtevnejša izvedba
& manj zahtevna izvedba \\
\end{tctabularx}
\end{document}
答案2
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[dvipsnames,svgnames,table]{xcolor}
\usepackage{makecell,tabularx}
\newcolumntype{L}{>{\raggedright\arraybackslash}X}
\usepackage[many]{tcolorbox}
\newtcolorbox{tctabularx}[1]{%
enhanced,
fonttitle=\sffamily\bfseries, fontupper=\small\sffamily,
arc=0mm,
colback=yellow!10!white, colframe=red!50!black,
#1 }% end tctabularx
\begin{document}
\begin{tctabularx}{tabularx={L|L}}
\cellcolor{yellow!30!white}
\thead{FIR}
& \cellcolor{yellow!30!white} \thead{IIR} \\
\hline
končni impulzni odziv $h[n]$
& neskončni impulzni odziv $h[n]$ \\
\hline
sistemska funkcija je polinom
& sistemska funkcija je racionalna\newline
(ulomek dveh polinomov) \\
\hline
zahtevnejša izvedba
& manj zahtevna izvedba \\
\end{tctabularx}
\end{document}
在这种情况下,您应该使用\cellcolor
。这是因为tcolorbox
es 被认为更像是单元格,而不是多单元格(行)。