我用 \cline 在表格中从第二列开始画线,因为前两行是合并单元格。只要我不使用单元格颜色,这种方法就很好。如果我给行上色,\cline 画的线就会变白。我仍然可以在屏幕上看到一些非常模糊的边框,如果打印出来,这些边框可能会完全消失。
有人知道解决这个问题的方法吗?
这是我的最小工作示例:
\documentclass{article}
\usepackage{longtable}
\usepackage{array}
\usepackage{rotating}
\usepackage{hhline}
\usepackage{colortbl}
\usepackage{multirow}
\usepackage{titlesec}
\begin{document}
\newcounter{magicrownumbers}
\newcommand\rownumber{\stepcounter{magicrownumbers}\arabic{magicrownumbers}}
\begin{table}
\centering
\begin{tabular}{|r|l|l|l|}
\hline
\rowcolor[gray]{.90}
\multirow{2}{*}{\centering\rownumber}& \multicolumn{3}{c|}{\begin{minipage}{14cm}{\vspace{2mm}The text here\vspace{2mm}}\end{minipage}} \\
\cline{2-4}
\rowcolor[gray]{.90}
& Score: 1 & Remark: XXX & Substitute: KKKKK\\
\hline
% rowcolor[gray]{.90}
\multirow{2}{*}{\centering\rownumber}& \multicolumn{3}{c|}{\begin{minipage}{14cm}{\vspace{2mm}The text here\vspace{2mm}}\end{minipage}} \\
\cline{2-4}
%\rowcolor[gray]{.90}
& Score: 1 & Remark: XXX & Substitute: KKKKK\\
\hline
\end{tabular}
\end{table}
\end{document}
答案1
谢谢你,这有效。
这是修复版本(如果放大,您仍然可以看到灰色背景上新的灰线通过框绘制的模糊的东西,但我怀疑任何打印机实际上都能够打印出这种细微的差别(或者我看到是因为我的视网膜显示屏......不知道)
\documentclass{article}
\usepackage{longtable}
\usepackage{array}
\usepackage{rotating}
\usepackage{hhline}
\usepackage{colortbl}
\usepackage{multirow}
\usepackage{titlesec}
\definecolor{gray}{rgb}{0.9,0.9,0.9}
\begin{document}
\newcounter{magicrownumbers}
\newcommand\rownumber{\stepcounter{magicrownumbers}\arabic{magicrownumbers}}
\begin{table}
\centering
\begin{tabular}{|r|l|l|l|}
\hline
\rowcolor[gray]{.90}
\multirow{2}{*}{\centering\rownumber}& \multicolumn{3}{c|}{\begin{minipage}{14cm}{\vspace{2mm}The text here\vspace{2mm}}\end{minipage}} \\
\hhline{|>{\arrayrulecolor{gray}}->{\arrayrulecolor{black}}|---|}
\rowcolor[gray]{.90}
& Score: 1 & Remark: XXX & Substitute: KKKKK\\
\hline
% rowcolor[gray]{.90}
\multirow{2}{*}{\centering\rownumber}& \multicolumn{3}{c|}{\begin{minipage}{14cm}{\vspace{2mm}The text here\vspace{2mm}}\end{minipage}} \\
\hhline{|>{\arrayrulecolor{white}}->{\arrayrulecolor{black}}|---|}
%\rowcolor[gray]{.90}
& Score: 1 & Remark: XXX & Substitute: KKKKK\\
\hline
\end{tabular}
\end{table}
\end{document}
答案2
您可以使用 来实现这{NiceTabular}
一点nicematrix
。
\documentclass{article}
\usepackage{nicematrix}
\begin{document}
\newcounter{magicrownumbers}
\newcommand\rownumber{\stepcounter{magicrownumbers}\arabic{magicrownumbers}}
\begin{table}
\centering
\begin{NiceTabular}{rlll}[hvlines]
\CodeBefore
\rowcolor[gray]{.90}{1,2}
\Body
\Block{2-1}{\rownumber}& \multicolumn{3}{c}{\begin{minipage}{14cm}{\vspace{2mm}The text here\vspace{2mm}}\end{minipage}} \\
& Score: 1 & Remark: XXX & Substitute: KKKKK\\
\Block{2-1}{\rownumber}
& \multicolumn{3}{c}{\begin{minipage}{14cm}{\vspace{2mm}The text here\vspace{2mm}}\end{minipage}} \\
& Score: 1 & Remark: XXX & Substitute: KKKKK\\
\end{NiceTabular}
\end{table}
\end{document}
您需要多次编译(因为nicematrix
使用 PGF/Tikz 节点)。