Ich habe ein Problem mit der folgenden Tabelle:
\begin{table}[H]
\newcommand{\ctab}{\centering\arraybackslash}
\definecolor{F1}{RGB}{255,255,255}
\definecolor{F0}{RGB}{210,0,0}
\definecolor{F2}{RGB}{0,176,80}
\resizebox{0.85\textwidth}{!}{\begin{tabular}{|c|c|c|c|c|c|}
\hline
\rule{0pt}{30pt}
\multicolumn{2}{|c|}{\cellcolor{gray!50}\huge{\textbf{a}}} &
%\cellcolor{gray!50}\huge{\textbf{a}} &
%\cellcolor{gray!50}\huge{\textbf{}} &
\cellcolor{gray!50}\huge{\textbf{b}} &
\cellcolor{gray!50}\huge{\textbf{C}} &
\cellcolor{gray!50}\huge{$\mathbf{d}$} &
\cellcolor{gray!50}\huge{$\mathbf{e}$}
\\
\end{tabular}}
\caption{XY}
\label{tab:XY}
\end{table}
Probleme gibt es mit der Mehrspaltigkeit. Wenn ich ändere zu:
%\multicolumn{2}{|c|}{\cellcolor{gray!50}\huge{\textbf{a}}} &
\cellcolor{gray!50}\huge{\textbf{a}} &
\cellcolor{gray!50}\huge{\textbf{}} &
Es funktioniert...
Wo ist das Problem?
Danke!
Antwort1
Das Problem wird durch Ihr \rule
in Verbindung mit verursacht \multicolumn
, da es sich in derselben Zelle wie das befindet \multicolumn
. Wenn Sie es behalten möchten, platzieren Sie es in einer anderen Zelle oder innerhalb des . Wenn Sie nur einen angemessenen Abstand wünschen, können Sie direkt nach \multicolumn
ein einfügen .\strut
\huge
Verwendung von \rule
:
\documentclass[]{article}
\usepackage[table]{xcolor}
\begin{document}
\begin{table}
\begin{tabular}{|c|c|c|c|c|c|}
\hline
\multicolumn{2}{|c|}{\cellcolor{gray!50}\huge{\textbf{a}}{\rule{0pt}{30pt}}} &
\cellcolor{gray!50}\huge{\textbf{b}} &
\cellcolor{gray!50}\huge{\textbf{C}} &
\cellcolor{gray!50}\huge{$\mathbf{d}$} &
\cellcolor{gray!50}\huge{$\mathbf{e}$}
\\
\hline
f&g&h&i&j&k\\
\hline
\end{tabular}
\caption{XY}
\label{tab:XY}
\end{table}
\end{document}
Verwendung von \strut
:
\documentclass[]{article}
\usepackage[table]{xcolor}
\begin{document}
\begin{table}
\centering%
\begin{tabular}{|c|c|c|c|c|c|}
\hline
\multicolumn{2}{|c|}{\cellcolor{gray!50}\huge\strut{\textbf{a}}} &
\cellcolor{gray!50}\huge{\textbf{b}} &
\cellcolor{gray!50}\huge{\textbf{C}} &
\cellcolor{gray!50}\huge{$\mathbf{d}$} &
\cellcolor{gray!50}\huge{$\mathbf{e}$}
\\
\hline
f&g&h&i&j&k\\
\hline
\end{tabular}
\caption{XY}
\label{tab:XY}
\end{table}
\end{document}
Antwort2
Sie können verwenden \extrarowheight
, um etwas Polsterung an der Oberseite hinzuzufügenalleZellen (das ist kaum ein Luxus, wenn man die Enge der Standardzeilenhöhen bedenkt) oder definieren Sie eineminimalvertikaler Abstand am oberen und unteren Rand der Zellen in Spalten mit dem Buchstaben S
.
Ich habe den Code vereinfacht \rowcolor
, indem ich den Befehl verwendet und einen \myhead
Befehl definiert habe, der die Schriftartänderungen umfasst. Ich habe mir die Freiheit genommen, die Farbe der ersten Zeile in einen schöneren Grauton zu ändern:
\documentclass[]{article}
\usepackage{ cellspace}
\usepackage[table, svgnames]{xcolor}
\setlength{\cellspacetoplimit}{4pt}
\setlength{\cellspacebottomlimit}{3pt}
\newcommand{\myhead}[1]{\huge\boldmath\bfseries#1}
\begin{document}
\begin{table}[!htb]
\centering
\begin{tabular}{|*{6}{Sc|}}
\hline
\rowcolor{GhostWhite!80!Gainsboro} \multicolumn{2}{|c|}{\myhead{a}}&
\myhead{b} &
\myhead{C} &
\myhead{$\mathbf{d}$} &
\myhead{$\mathbf{e}$}
\\
\hline
f&g&h&i&j&k\\
\hline
\end{tabular}
\caption{XY}
\label{tab:XYZ}
\end{table}
\end{document}