Ich habe folgenden Code für eine Tabelle:
\bgroup
\def\arraystretch{1.5}
\begin{table}[ht]
\textbf{\caption{My Table}} % title of Table
\centering % used for centering table
\begin{tabular}{ c|ccc }
\hline
Col1 & Col2 & Col3 & Col4\\[5pt]
\hline
\multirow{2}{*}{Merged Cell} & A12 & A13 & A14\\
\cmidrule(lr){2-4}
& A22 & A23 & A24 \\
\hline
\end{tabular}
\end{table}
\egroup
Wenn ich diesen Code ausführe, stelle ich fest, dass die vertikale Linie zwischen der 1. und 2. Spalte unterbrochen ist. Ich bin mir nicht sicher, warum das passiert.
Antwort1
Booktabs
fügt vertikale Polsterung um seine Linien ( aboverulesep
und belowrulesep
) hinzu, was die Diskontinuität erklärt. Wenn Sie diese auf -0.2pt
(die halbe Dicke einer Standardlinie) einstellen, wird das Problem gelöst.
Sie können auch boldline
Regeln laden, um die variable Dicke von Buchregisterkarten zu emulieren, aber Sie verlieren die Möglichkeit, \cmidrule
sie zuzuschneiden.
Hier ist ein Beispiel für beide Lösungen:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{multirow, booktabs, caption, boldline, cellspace}
\captionsetup{font=bf}
\setlength\cellspacetoplimit{8pt}
\setlength\cellspacebottomlimit{\cellspacetoplimit}
\begin{document}
\bgroup
\aboverulesep = -0.2pt
\belowrulesep = -0.2pt
\def\arraystretch{1.5}
\begin{table}[!ht]
\caption{My Table} % title of Table
\centering % used for centering table
\begin{tabular}{ c|ccc }
\toprule
Col1 & Col2 & Col3 & Col4 \\[5pt]
\midrule
\multirow{2}{*}{Merged Cell} & A12 & A13 & A14 \\
\cmidrule(lr){2-4}
& A22 & A23 & A24 \\
\bottomrule
\end{tabular}
\end{table}
\egroup
\vskip 1cm
\begin{table}[!ht]
\caption{My Table} % title of Table
\centering % used for centering table
\begin{tabular}{ c|Sccc }
\hlineB{2}
Col1 & Col2 & Col3 & Col4 \\
\hlineB{1.5}
\multirow{2}{*}[-4.6pt]{Merged Cell} & A12 & A13 & A14 \\
\clineB{2-4}{1.5}
& A22 & A23 & A24 \\
\hlineB{2}
\end{tabular}
\end{table}
\end{document}