Gefärbte Tabellen

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Gefärbte Tabellen

von Laures » So 27. Jun 2010, 17:41

viele Pakete und einige hässliche Ideen später hier meine recht saubere Lösung.

Nochmal die Aufgabe: ein /toprule und ein /midrule Command schreiben, sodass mehrere headerzeilen blauen hHintergrund und weißen Text haben.

Lösung
Zuerst benötigen wir zwei commands, die die Textformatierung und die Farbformatierung halten.
\newcommand{\rowstyle}[1]{
	\gdef\currentrowstyle{#1} %
	#1\ignorespaces
}
\newcommand{\rowbg}[1]{
	\gdef\currentrowbg{#1} %
	#1\ignorespaces
}
\rowstyle{}\rowbg{}
Diese beiden Eigenschaften können jetzt in die Spaltendefinition aufgenommen werden. Dabei erfolgt die Definition der Schriftfarbe VOR und die Farbdefinition des Hintergrunds NACH dem Zelleninhalt. Warum erklär ich gleich.
\newcolumntype{C}{>{\centering\currentrowstyle\arraybackslash}X<{\currentrowbg\arraybackslash}}
Jetz können ein /toprule und ein /midrule Command geschrieben werden die \rowstyle/bg entsprechend definieren:
\newcommand{\toprule}{
	\rowstyle{\color{white}}
	\rowbg{\cellcolor{blue}	}
}
\newcommand{\midrule}{
	\global\let\currentrowstyle\relax
	\global\let\currentrowbg\relax
	\color{black}
}
Warum jetzt die Farbdefinition hinter den inhalt? Stünde sie vorn wäre die erste Zelle der Zeile in der \midrule aufgerufen wird bereits Blau bevor \midrule die Farbe wieder ändern kann! Genau aus diesem Grund enthällt \midrule auch \color{black}. Da für die erste Zelle sonst noch die weiße Schriftfarbe gültig wäre.

Ich bin jetz irgendwie stolz auf mich....

Gefärbte Tabellen

von Laures » Fr 25. Jun 2010, 15:56

Hi,

ich möchte eine Tabelle umsetzen mit einem farbigen Tabellenkopf und einem Tabellenkörper mit farbwechsel (grau/weiß).

Die alternierende färbung der gesamten tabelle geht mit
\usepackage[table]{xcolor}
\rowcolors{1}{green}{pink}
Jetzt könnte ich einfach die Hintergrundfarbe des headers überschreiben, aber dann fängt die alternierende Färbung immer mit einer anderen Farbe an (abhängig davon wieviele Zeilen der header hat). Gibt es dafür eine bessere Möglichkeit?

Außerdem soll der Header weiß auf blau werden. wie formatiere ich die Schriftfarbe so das der gesamte Text im header weiß wird?

Ich möchte letztendlich mein eigenen \toprule (header) \midrule (beginn des body) schreiben, weshalb ich nicht einfach jede Zelle der Tabelle einzeln formatieren kann bzw. möchte.

Gruß,
Laures

Nach oben