表格中某些行的垂直线较粗

表格中某些行的垂直线较粗

我正在尝试创建一个表格,其中表格的一部分以粗线突出显示。 在此处输入图片描述

使用 tabular 和 \cline 的变体,我可以创建部分水平线。但是,我还没有找到创建部分垂直线的方法。有什么建议吗?

答案1

灵感来自我对上一个问题的回答

在此处输入图片描述

\documentclass{article}
\usepackage{array}

\newlength{\defaultarrayrulewidth}
\newcommand{\Cline}[2]{%
  \noalign{\global\setlength{\defaultarrayrulewidth}{\arrayrulewidth}}%
  \noalign{\global\setlength{\arrayrulewidth}{#1}}\cline{#2}%
  \noalign{\global\setlength{\arrayrulewidth}{\defaultarrayrulewidth}}}


\begin{document}

\begin{tabular}{|c|c|c|c|c|}
\hline
A1 & A2 & A3& A4&  A5 \\
\cline{1-1} \Cline{1pt}{2-3} \cline{4-5}
 B1 & \multicolumn{1}{!{\vrule width 1pt}c|}{B2}& \multicolumn{1}{c!{\vrule width 1pt}}{B3}&  B4 & B5 \\
\hline
C1 & \multicolumn{1}{!{\vrule width 1pt}c|}{C2} & \multicolumn{1}{c!{\vrule width 1pt}}{C3}&  C4 & C5\\
\cline{1-1} \Cline{1pt}{2-3} \cline{4-5}
D1 & D2 & D3& D4&  D5\\
\hline
\end{tabular}

\end{document}

答案2

使用{NiceTabular}nicematrix您只需使用命令\Block(由 提供nicematrix)。

\documentclass{article}
\usepackage{nicematrix}

\begin{document}

\begin{NiceTabular}{ccccc}[hvlines]
A1 & A2 & A3 & A4 & A5 \\
B1 & \Block[draw,line-width=1pt,transparent]{2-2}{}
     B2 & B3 & B4 & B5 \\
C1 & C2 & C3 & C4 & C5 \\
D1 & D2 & D3 & D4 & D5 \\ 
\end{NiceTabular}

\end{document}

transparent命令的键\Block表示它对于 键创建的垂直和水平规则是“透明的hvlines{NiceTabular}

上述代码的输出

\CodeAfter如果您不想在主数组中使用指令,您可以使用由创建的 PGF/TikZ 节点在所谓的 TikZ 中绘制粗体框架nicematrix

\documentclass{article}
\usepackage{nicematrix,tikz}

\begin{document}

\begin{NiceTabular}{ccccc}[hvlines]
  A1 & A2 & A3 & A4 & A5 \\
  B1 & B2 & B3 & B4 & B5 \\
  C1 & C2 & C3 & C4 & C5 \\
  D1 & D2 & D3 & D4 & D5 \\ 
\CodeAfter
  \tikz \draw [line width = 1pt] (2-|2) rectangle (4-|4) ; 
\end{NiceTabular}

\end{document}

输出是一样的。

相关内容