假设我有一张这样的表格:
\documentclass{article}
\usepackage{multirow}
\begin{document}
\begin{tabular}{cc|cc|c|}
\cline{3-5}
& & \multicolumn{2}{c|}{\multirow{2}{*}{a}} & c \\ \cline{1-2} \cline{5-5}
\multicolumn{1}{|c|}{d} & e & \multicolumn{2}{c|}{} & h \\ \hline
\multicolumn{2}{c|}{} & \multicolumn{1}{c|}{i} & j & k \\ \hline
\multicolumn{1}{|c|}{l} & m & \multicolumn{1}{c|}{n} & o & p \\ \hline
\end{tabular}
\end{document}
有没有办法修改 LaTeX 中表格的每个单元格,并独立更改每个框的角?我该如何实现这样的表格?
“a”单元格是多行单元格,我想更改其他单元格的角,类似于下图:
在这个答案中[这里],它只给出了整个表格的角落,你不能制作像这样的表格:
那么给这些细胞着色怎么样?
这是具有 LaTeX 默认尖角的最新表格的代码:
\documentclass{article}
\usepackage{multirow}
\begin{document}
\begin{tabular}{ll|ll|ll|}
\cline{3-6}
& & \multicolumn{2}{l|}{\multirow{2}{*}{a}} & \multicolumn{2}{l|}{b} \\ \cline{5-6}
& & \multicolumn{2}{l|}{} & \multicolumn{2}{l|}{c} \\ \hline
\multicolumn{1}{|l|}{x} & 1 & y & 1 & z & 1 \\ \hline
\multicolumn{1}{|l|}{} & & & & & \\ \hline
\end{tabular}
\end{document}
答案1
你可以利用这个nicematrix
包,它为你提供了很大的灵活性,因为它允许用 Ti 绘制边框钾Z(但这也是一项相当繁重的工作,因为您需要手动绘制所有内容)。例如,您可以这样做:
\documentclass{article}
\usepackage{nicematrix, tikz}
\begin{document}
\begin{NiceTabular}{ccccc}
\CodeBefore
\begin{tikzpicture}
\fill[yellow, rounded corners]
(3-|3) -- (1-|3) [sharp corners] -- (1-|5) -- (3-|5) -- cycle;
\end{tikzpicture}
\Body
& & \Block{2-2}{a} & & c \\
d & e & & & h \\
& & i & j & k \\
l & m & n & o & p \\
\CodeAfter
\begin{tikzpicture}
\draw[rounded corners]
(3-|3) -- (1-|3) -- (1-|6)
(1-|6) -- (5-|6) -- (5-|1)
(2-|3) -- (2-|1) -- (3-|1) -- (3-|3) -- (5-|3);
\draw
(4-|1) -- (5-|1)
(2-|2) -- (3-|2)
(4-|2) -- (5-|2)
(3-|4) -- (5-|4)
(1-|5) -- (5-|5)
(2-|5) -- (2-|6)
(3-|3) -- (3-|6)
(4-|1) -- (4-|6);
\end{tikzpicture}
\end{NiceTabular}
\end{document}