PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tabelle Zellen teilweise dicker umrahmen



pucki
06-09-2024, 18:52
Hallo zusammen,

hat jemand eine Idee, wie ich eine zusätzlichen Rahmen um die Zellen mit dem Inhalt uxxx, vxxx, wxxx, sum lege? Das soll den die Zusammengehörigkeit des Inhalts verdeutlichen ..
Das ist keine Tabelle im üblichen Sinne, sondern die tabellarische Darstellung eines Ablaufs ...

BG
ps: in meinem originalen Dokument habe ich noch die unschöne Sitiuation, dass es mir die vertikale Linie vor 'sum' etwas einrückt. Irgendwo hab ich mal eine Lösung dafür gesehen ... aber den Link nicht gespeichert.
ich muss mal noch versuchen heraus zu finden, welches zusätzliche Paket da Probleme macht.



\documentclass[a4paper,11pt]{scrreport}
\usepackage[utf8]{inputenc}

\begin{document}

\begin{tabular}{|c|c|c|c|c|}
\cline{2-5}
\multicolumn{1}{c|}{}& a & bbbbbbbb 1 & b 2 & b 3\\ \hline
a & -& 0 & 0 & 0 \\ \hline
bbbbbbbb & 0 & 1 & 0 & 0 \\ \hline
c & 0 & 0 & 1 & 0 \\ \hline
d & sssssssssss & uxxx & vxxx & wxxx \\ \hline
\multicolumn{2}{c}{\hspace{1em}}&\multicolumn{3}{|c|}{sum}\\ \cline{3-5}
\end{tabular}

\end{document}

pucki
06-09-2024, 19:05
hmm

\usepackage{nicematrix}

ist für die Verschiebung wohl verantwortlich ...


....
ich bin dazu übergegangen nicematrix zu verwenden. Einen zusätzlichen Rahmen (dickere Linien um einen Zellverbund) habe ich noch nicht hin bekommen aber zumindest mal den Block farblich abgesetzt.

klops
14-10-2024, 08:19
Du hast dein Problem mit nicematix leider nicht gezeigt, aber das Problem mit der „Einrückung” liegt vermutlich hier:

… &\multicolumn{3}{|c|}{sum} …
Vertikale Striche aus der Spaltendeklaration der Tabelle selbst gehören immer zur vorherigen Spalten. Es gibt davon nur eine einzige Ausnahme: Die vertikale Linie vor der ersten Spalte. Hier schanzt du aber die vertikale Linie vor der Spalte der nachfolgenden Spalte zu. Der Code der Tabelle sollte also:


\documentclass[a4paper,11pt]{scrreport}
\usepackage[utf8]{inputenc}
\usepackage{nicematrix}% oder auch \usepackage{array}
\begin{document}

\begin{tabular}{|c|c|c|c|c|}
\cline{2-5}
\multicolumn{1}{c|}{}& a & bbbbbbbb 1 & b 2 & b 3\\ \hline
a & -& 0 & 0 & 0 \\ \hline
bbbbbbbb & 0 & 1 & 0 & 0 \\ \hline
c & 0 & 0 & 1 & 0 \\ \hline
d & sssssssssss & uxxx & vxxx & wxxx \\ \hline
\multicolumn{2}{c|}{}&\multicolumn{3}{c|}{sum}\\ \cline{3-5}
\end{tabular}

\end{document}

lauten.

Umrandungen können bei NiceTabular oder NiceMatrix übrigens mit \Block[draw,rounded-corners]{…}{…} o. ä. erreicht werden. Eine weitere Alternative wäre die Verwendung von tabularray (https://ctan.org/pkg/tabularray). Das ist quasi die eierlegende Wollmilchsau für Tabellen (was man sich allerdings durch Laufzeit erkauft). Dort empfehle ich min. die Abschnitte 2.2 bis 2.4 in der Anleitung, wenn es um um Linien und Hervorhebungen geht.