具有不同背景颜色和表格的Tcolorbox

具有不同背景颜色和表格的Tcolorbox

大家好!我是新手tcolorbox,我想实现一些我没想到会花这么多时间却没有任何结果的事情。通常,文档和谷歌搜索可以帮助我实现目标。但是,对于这个,我没有运气,文档tcolorbox实在是太多了。我展示到目前为止我的工作代码:

\begin{tcolorbox}[colback=blue!83,arc=0pt,outer arc=0pt]
    \begin{minipage}{.25\textwidth} 
        \bf \textcolor{white}{1}  \\  \textcolor{white}{2} \\ \textcolor{white}{3}
    \end{minipage}%
    \begin{minipage}{.75\textwidth} 
        \phantom{1} \\ \phantom{1} \\ \phantom{1} %used for painting
    \end{minipage}
\end{tcolorbox}

我曾经minipage尝试过更简单的方法来分离框,并尝试用不同的颜色(灰色)绘制正确的 minipage,因为我无法通过选项做到这一点colorbox。我为实现这一点所做的是将 minipage 放在 fcolorbox 中。这并没有给我想要的结果,因为它只绘制了三行,在灰色 fcolorbox 周围留下了一些仍然涂成蓝色的空间。我也尝试了其他方法,结果也类似。我只希望所有正确的 minipage 都是灰色的。理想情况下,我希望整个 tcolorbox 是 3 乘 2 的表格,并且没有框架。因此预期的输出如下:

在此处输入图片描述

答案1

假设您在问题中包含的图像是预期输出的草图,我不建议tcolorbox重现它。相反,专用于表格的包,例如tabularraynicematrix应该会派上用场:

在此处输入图片描述

\documentclass{article}

\usepackage{xcolor}
\usepackage{tabularray}

\definecolor{myblue}{RGB}{46, 116, 181}
\definecolor{mygray}{RGB}{217, 217, 217}

\begin{document}
\noindent
\begin{tblr}{colspec={X[1]X[3]}, 
             hlines, vlines,
             column{1}={bg=myblue, fg=white, font=\bfseries}, 
             column{2}={bg=mygray}} 
        1 & \\
        2 & \\
        3 & \\
\end{tblr}
\end{document}

\documentclass{article}

\usepackage{xcolor}
\usepackage{nicematrix}

\definecolor{myblue}{RGB}{46, 116, 181}
\definecolor{mygray}{RGB}{217, 217, 217}

\begin{document}
\noindent
\begin{NiceTabularX}{\linewidth}{>{\bfseries\color{white}}X[1]X[3]}[hvlines]
\CodeBefore
\columncolor{myblue}{1}
\columncolor{mygray}{2}
\Body
        1 & \\
        2 & \\
        3 & \\
\end{NiceTabularX}
\end{document}

答案2

正如 leandriis 所评论的,最好使用表格或数组包来绘制所需的方案。但tcolorbox您也可以模拟表格。这是一个带有的示例tcbitemize

\documentclass{article}
\usepackage[most]{tcolorbox}
\begin{document}
\begin{tcbitemize}[raster columns=4, raster column skip=-0.5mm, raster row skip=-0.5mm,
raster equal height=rows, 
sharp corners, colback=blue, coltext=white, raster even number/.style={raster multicolumn=3, colback=gray}]
\tcbitem 1
\tcbitem
\tcbitem 2
\tcbitem
\tcbitem 3
\tcbitem
\end{tcbitemize}
\end{document}

在此处输入图片描述

相关内容