我对制作一个颜色重叠的表格很感兴趣。我的意思是,我想在表格的第一列添加一种额外的颜色,并将不透明度设置为 20%,如果可能的话,我希望它与行颜色混合。我很难找到答案。我真的很感激有人能帮助我 :)
我目前有的是:
\documentclass[12pt, a4paper, oneside, onecolumn]{memoir}
\usepackage[table]{xcolor}
\definecolor{ltable}{HTML}{EDE7FF}
\definecolor{dtable}{HTML}{D9CEFF}
\begin{document}
\rowcolors{3}{ltable}{dtable}
\begin{tabular}{ |c|c| }
\hline
\rowcolor{dtable} \multicolumn{2}{|l|}{header} \\ \hline
\rowcolor{dtable} \multicolumn{2}{|c|}{some text} \\ \hline
1 & text \\ \hline
2 & text \\ \hline
3 & text \\ \hline
4 & text \\ \hline
5 & text \\ \hline
\end{tabular}
\end{document}
重叠颜色从 1 开始并结束于 5。出于练习目的,它可以是黑色并将不透明度设置为 20%。
答案1
你可以使用 tikz 来做这件事。我使用制作了一个表格matrix
,然后将颜色应用到背景层上。我得到的结果如下所示。我认为你可以改进并获得所需的结果。
平均能量损失
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix,backgrounds,calc}
\definecolor{oddrow}{HTML}{00FF00}
\definecolor{evenrow}{HTML}{0000FF}
\definecolor{column1}{HTML}{FF0000}
\begin{document}
\begin{tikzpicture}
\matrix(tab)[matrix of nodes,nodes={inner sep=5pt,minimum width=1cm},column sep=2mm]
{%table without header
1 & text \\
2 & text \\
3 & text \\
4 & text \\
5 & text \\
};
\begin{scope}[on background layer]
\fill[column1,opacity=0.5] (tab-1-1.north west) rectangle (tab-5-1.south east); column1 color
\foreach \rw in {1,3,...,5} %odd rows
\draw[draw=black,fill=oddrow,opacity=0.5] (tab-\rw-1.north west) rectangle (tab-\rw-2.south east);
\foreach \rw in {2,4,...,4} %even rows
\draw[draw=black,fill=evenrow,opacity=0.5] (tab-\rw-1.north west) rectangle (tab-\rw-2.south east);
%headers
\draw (tab-1-1.north west) rectangle ($(tab-1-2.north east)+(0,0.5)$)node[midway]{Some text};
\draw ($(tab-1-1.north west)+(0,0.5)$) rectangle ($(tab-1-2.north east)+(0,1)$)node[midway]{Header};
\end{scope}
\end{tikzpicture}
\end{document}
答案2
该软件包nicematrix
中有解决此类问题的工具。
\documentclass{article}
\usepackage{nicematrix}
\begin{document}
\begin{NiceTabular}{cc}[hvlines]
\CodeBefore
\rowlistcolors{3}{green!50,blue!50}
\rectanglecolor[opacity=0.2]{black}{3-1}{9-1}
\Body
\Block{1-2}{Header} \\
\Block{1-2}{Some text} \\
1 & text \\
2 & text \\
3 & text \\
4 & text \\
5 & text \\
6 & text \\
7 & text
\end{NiceTabular}
\end{document}
您需要多次编译。