Wenn ich ein \usepackage{colortbl}
Leerzeichen verwende, \hline\hline
verschwindet \longtable
es. Ich habe keine Lösung gefunden, wie ich das Leerzeichen wiederherstellen kann, also hoffe ich, dass Sie mir dabei helfen.
\begin{longtable}{|l|l|l|l|c|r|r|r|}
\caption{{ABD}}
\label{tab:SO}\\
\hline
\multicolumn{1}{|l|}{{SO} - 01} & \multicolumn{7}{ c| }{AD}\\
\hline\hline
\multicolumn{4}{|l|}{Popis} & MJ & AD & AD & CD\\
\hline
\multicolumn{4}{|l|}{AD }& $3$ & 37000 & 0,32& 11\,800 \\
\hline
\end{longtable}
Antwort1
colortbl
lädt eine Menge Code, um \begin{document}
nach Longtable zu suchen und die Kompatibilität sicherzustellen. Wenn Sie das unterbinden, funktioniert alles besser. Ich gebe den Paketautoren der colortbl
und longtable
Pakete die Schuld, weil sie nicht kommunizieren.
\documentclass{article}
\usepackage{color}
\makeatletter
\let\xx@begindocumenthook\@begindocumenthook
\let\xxhline\hline
\let\xx@xhline\@xhline
\usepackage{colortbl}
\let\hline\xxhline
\let\@xhline\xx@xhline
\let\@begindocumenthook\xx@begindocumenthook
\makeatother
\usepackage{longtable}
\begin{document}\color{black}
\begin{longtable}{|l|l|l|l|c|r|r|r|}
\caption{{ABD}}
\label{tab:SO}\\
\hline
\multicolumn{1}{|l|}{{SO} - 01} & \multicolumn{7}{ c| }{AD}\\
\hline\hline
\multicolumn{4}{|l|}{Popis} & M J & AD & AD & CD\\
\hline
\multicolumn{4}{|l|}{AD }& $3$ & 37000 & 0,32& 11\,800 \\
\hline
\end{longtable}
\end{document}
Antwort2
Das colortbl
Paket definiert das \LT@@hline
Makro direkt nach dem neu und vergleicht das Makro \begin{document}
zuerst mit dem Makro . Aber das Makro (innerhalb einer „Longtable“-Umgebung) wird wie folgt erweitert:\ifx
\hline
\LT@next
\hline
\noalign{\ifnum 0=‘}\fi\penalty\@M\futurelet\@let@token\LT@@hline
\hline
Also ist es richtig, das Makro und zu vergleichen \@let@token
.
\let\LT@next\@let@token
Eine Problemumgehung besteht darin , der Definition von \LT@@hline
nach dem voranzustellen \begin{document}
.
\documentclass{article}
\usepackage{colortbl,longtable}
\begin{document}
\makeatletter
\let\LT@@hline@bkp\LT@@hline
\def\LT@@hline{\let\LT@next\@let@token\LT@@hline@bkp}
\makeatother
\begin{longtable}{|l|l|l|l|c|r|r|r|}
\caption{{ABD}}
\label{tab:SO}\\
\hline
\multicolumn{1}{|l|}{{SO} - 01} & \multicolumn{7}{ c| }{AD}\\
\hline\hline
\multicolumn{4}{|l|}{Popis} & M J & AD & AD & CD\\
\hline
\multicolumn{4}{|l|}{AD }& $3$ & 37000 & 0,32& 11\,800 \\
\hline
\end{longtable}
\end{document}