AA_ein-bild-von-wilden-blumen-in-der-wiese_Andrzej-Wilusz_123rf_23961640.jpg

© Andrzej Wilusz, 123RF

Kunterbunt

Farben in LaTeX kreativ nutzen mit dem Paket Xcolor

19.12.2013
Mit dem Paket Xcolor treiben Sie es in LaTeX bunt: Die umfangreichen Möglichkeiten erlauben einen kreativen Umgang mit Farben.

Seitenweise Fußnoten, endlose Literaturlisten, Lauftext, so weit das Auge schaut – LaTeX-Dokumente gelten als der Heilige Gral des Textsatzes. Der immer gleiche Aufbau sorgt aber auch leicht für gepflegte Langeweile. Doch mit dem Paket Xcolor sagen Sie der grauen Bleiwüste den Kampf an und sorgen durch dezente Farbtupfer nicht nur für mehr Abwechslung, sondern bei Bedarf auch für mehr Übersicht.

Auch beim Thema Farbe gibt sich LaTeX gewohnt professionell: Sie haben die Möglichkeit, eine Vielzahl vordefinierter Farben zu nutzen, Farben in verschiedenen Modellen selbst zu definieren, diese in andere Modelle zu konvertieren, Komplementärfarben zu erzeugen, Farben zu mischen, verschiedene Helligkeitsstufen einer Farbe zu bilden und Tabellenzeilen alternierend einzufärben. Sie laden das Paket Xcolor in der Präambel mit dem folgenden Befehl:

\usepackage[Optionen]{xcolor}

In der Tabelle "Paketoptionen" finden Sie eine Übersicht der Optionen, die Xcolor mitbringt, und deren jeweilige Funktionen.

Paketoptionen

Option Funktion
rgb Farben ins RGB-Modell konvertieren
cmyk Farben ins CMYK-Modell konvertieren
hsb Farben ins HSB-Modell konvertieren
HTML Farben in webtaugliche Werte konvertieren
gray Farben in Graustufen umwandeln
hideerrors Warnmeldung ausgeben, wenn eine undefinierte Farbe zum Einsatz kommt und diese durch Schwarz ersetzen
dvipsnames Definiert die Farbnamen des Treibers dvips
svgnames Definiert die Farbnamen der SVG-1.1-Spezifikation
x11names Definiert die X11-Farbnamen
table Lädt Colortbl, um farbige Tabellenzeilen zu erzeugen

Farben definieren

Um eine Farbe zu verwenden, definieren Sie diese zunächst. Die Tabelle "Vordefinierte Farben" zeigt, welche Farbwerte das Paket direkt mitbringt. Diese Farben sprechen Sie direkt über ihren Namen an. Mit der entsprechenden Option haben Sie die Möglichkeit, die Farbnamen des Treibers dvips, die Farbnamen der SVG-1.1-Spezifikation [2] oder die X11-Farbnamen [3] zu verwenden.

Vordefinierte Farben

Farbe Name Farbmodell
Schwarz black gray
Weiß white gray
Dunkelgrau darkgray gray
Grau gray gray
Hellgrau lightgray gray
Rot red rgb
Grün green rgb
Blau blue rgb
Cyan cyan cmyk
Magenta magenta cmyk
Gelb yellow cmyk
Braun brown rgb
Hellgrün lime rgb
Olivgrün olive cmyk
Orange orange rgb
Rosa pink rgb
Lila purple rgb
Türkis teal rgb
Violett violet rgb

Um eine zusätzliche Farbe zu definieren, wählen Sie zunächst einen Namen dafür. Gibt es bereits eine Farbdefinition unter diesem Namen, überschreiben Sie diese damit. Anschließend legen Sie das Farbmodell fest, in dem Sie die Farbe definieren möchten, und geben abhängig vom ausgewählten Farbmodell den Wert oder die Werte der Farbe an.

Dazu nutzen Sie einen Befehl, der der Schreibweise aus Listing 1 folgt. Die Tabelle "Farbmodelle" bietet eine Übersicht über die verfügbaren Modelle samt der möglichen Werte.

Listing 1

\definecolor{Name}{Farbmodell}{Wert(e)}

Farbmodelle

Modell Wertebereich
rgb Rot, Grün und Blau als drei Werte zwischen 0 und 1
RGB Rot, Grün und Blau als drei Werte zwischen 0 und 255
cmyk Cyan, Magenta, Gelb und Schwarz als vier Werte zwischen 0 und 1
hsb Farbton, Sättigung und Helligkeit als drei Werte zwischen 0 und 1
HSB Farbton, Sättigung und Helligkeit als drei Werte zwischen 0 und 240
HTML Rot, Grün und Blau als drei zweistellige Hexadezimalzahlen zwischen 00 und FF als ein sechsstelliger Wert
gray Graustufe als ein Wert zwischen 0 und 1
Gray Graustufe als ein Wert zwischen 0 und 15
named Name einer bereits definierten Farbe

Der Befehl \colorlet kopiert die ursprüngliche Farbe in die neu definierte Farbe. Als Ursprungsfarbe tragen Sie den Namen einer bereits definierten Farbe oder einen Mischausdruck ein. Als Platzhalter für die aktuelle Farbe dient ein Punkt (.). So speichert der Befehl \colorlet{NeueFarbe}{.} die aktuelle Farbe unter dem Namen NeueFarbe.

Mit der Umgebung testcolors stellt LaTeX eine gute Möglichkeit bereit, Farben und deren Werte in verschiedenen Farbmodellen in einer tabellarischen Übersicht zusammenzustellen (Abbildung 1). Dabei kennzeichnet jeweils eine Unterstreichung den Wert, der zu dem Farbmodell gehört, in dem die Farbe definiert ist.

Abbildung 1: Mit der Umgebung testcolors erstellen Sie schnell eine Übersicht über Farben und deren Farbwerte in verschiedenen Farbmodellen.

In Listing 2 findet sich in der ersten Zeile die Definition der Farbe Mauve im RGB-Modell. Zeile 2 öffnet die Umgebung testcolors. In den eckigen Klammern stehen die Farbmodelle, die in der Übersicht erscheinen sollen. Mit den testcolor-Befehlen geben Sie die Farben an, die Sie in die Übersicht aufnehmen möchten.

Listing 2

\definecolor{mauve}{RGB}{224 176 255}
\begin{testcolors}[rgb,RGB,cmyk,hsb,HSB,HTML,gray,Gray]
\testcolor{black}
\testcolor{white}
\testcolor{darkgray}
\testcolor{gray}
\testcolor{lightgray}
\testcolor{red}
\testcolor{green}
\testcolor{blue}
\testcolor{cyan}
\testcolor{magenta}
\testcolor{yellow}
\testcolor{brown}
\testcolor{lime}
\testcolor{olive}
\testcolor{orange}
\testcolor{pink}
\testcolor{purple}
\testcolor{teal}
\testcolor{violet}
\testcolor{mauve}
\testcolor[cmyk]{0 0.5 1 0.42}
\end{testcolors}

Dabei dürfen Sie den Namen einer vorher definierten Farbe in geschweiften Klammern verwenden (Zeilen 3 bis 22). Alternativ tragen Sie einen Farbwert in Form von Zahlen ein. Dann steht in eckigen Klammern das Farbmodell und in den geschweiften Klammern der Wert oder die Werte (Zeile 23). Zu guter Letzt schließen Sie die testcolors-Umgebung wieder (Zeile 24). Die Tabelle "Farben verwenden" zeigt, welche Befehle für die tägliche Arbeit bereitstehen, um Farbe ins Dokument zu bringen.

Farben verwenden

\color{Farbe} Verwenden Sie diesen Befehl in der Präambel, so wirkt er sich auf das gesamte Dokument aus. Verwenden Sie ihn im Hauptteil, passt LaTeX ab der Stelle, an der der Befehl steht, den Fließtext an; Überschriften, Seitenzahlen und andere Elemente behalten in diesem Fall ihre alte Farbe.
\textcolor{Farbe}{Text} Ändert nur die Farbe des Textes in der zweiten geschweiften Klammer.
\pagecolor{Farbe} Ändert die Hintergrundfarbe. Steht der Befehl in der Präambel, gilt er für das gesamte Dokument. Steht er im Hauptteil, ändert er die Farbe von dieser Stelle an.
\colorbox{Hintergrundfarbe}{Text} Legt einen Kasten mit einer Hintergrundfarbe um einen Text.
\fcolorbox{Rahmenfarbe}{Hintergrundfarbe}{Text} Legt statt einer ausgefüllten Fläche nur einen Rahmen um einen Text. Die Dicke des Rahmens bestimmen Sie mit dem Befehl \fboxrule=<§§I>Dicke<§§I>, den Abstand des Rahmens vom Text mit dem Befehl \fboxsep=<§§I>Abstand<§§I>.

Farbmodelle konvertieren

Standardmäßig belässt LaTeX alle Farben in dem Farbmodell, in dem Sie sie definiert haben. Über eine Paketoption veranlassen Sie die Software dazu, alle Farben in ein bestimmtes Modell zu konvertieren. Das ist beispielsweise dann sinnvoll, wenn Sie eine Druckvorlage erstellen und die Druckerei ein bestimmtes Farbmodell verlangt. Alternativ zur Paketoption geben Sie das Farbmodell über den folgenden Befehl an:

\selectcolormodel{Farbmodell}

Mit dem Befehl aus der ersten Zeile von Listing 3 konvertieren Sie eine bestimmte Farbe in ein anderes Farbmodell. In den ersten beiden geschweiften Klammern stehen das Farbmodell und der Wert (oder die Werte) der Ausgangsfarbe. Haben Sie die Farbe bereits definiert, tragen Sie als Ausgangsmodell named und als Wert den Farbnamen ein.

Listing 3

\convertcolorspec{named}{red}{cmyk}\cmykRot
Die Farbe Rot hat im cmyk-Modell die Werte: \cmykRot .
\definecolor{cmykRot}{cmyk}\cmykRot
Zwischen \colorbox{red}{Rot im rgb-Modell} und \colorbox{cmykRot}{Rot im cmyk-Modell} ist ein Unterschied zu erkennen.
\convertcolorspec{named}{green}{cmyk}\cmykGruen
Die Farbe Grün hat im cmyk-Modell die Werte: \cmykGruen .
\definecolor{cmykGruen}{cmyk}\cmykGruen
Zwischen \colorbox{green}{Grün im rgb-Modell} und \colorbox{cmykGruen}{Grün im cmyk-Modell} ist ein Unterschied zu erkennen.
\convertcolorspec{named}{blue}{cmyk}\cmykBlau
Die Farbe Blau hat im cmyk-Modell die Werte: \cmykBlau .
\definecolor{cmykBlau}{cmyk}\cmykBlau
Zwischen \colorbox{blue}{Blau im rgb-Modell} und \colorbox{cmykBlau}{Blau im cmyk-Modell} ist ein Unterschied zu erkennen.

In die dritte geschweifte Klammer gehört das als Umwandlungsziel vorgesehene Farbmodell. Als Letztes vergeben Sie noch einen Namen für das Makro, in dem Sie den Wert (oder die Werte) der Farbe im Zielfarbmodell speichern möchten.

Nach dem Speichern der Werte für die Zielfarbe im Makro vergeben Sie mit dem Befehl \definecolor einen Namen für die neue Farbe, wobei statt der dritten geschweiften Klammer des Befehls das Makro steht. Abbildung 2 zeigt das Ergebnis aus Listing 3, in dem der Unterschied zwischen den Farben in den beiden Modellen deutlich hervortritt.

Abbildung 2: Die im RGB-Modell vordefinierten Farben Rot, Grün und Blau erscheinen im CMYK-Modell deutlich unterschiedlich.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 6 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 11/2014: VIDEOS BEARBEITEN

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Schnell Multi-Boot-Medien mit MultiCD erstellen
Schnell Multi-Boot-Medien mit MultiCD erstellen
Tim Schürmann, 24.06.2014 12:40, 0 Kommentare

Wer mehrere nützliche Live-Systeme auf eine DVD brennen möchte, kommt mit den Startmedienerstellern der Distributionen nicht besonders weit: Diese ...

Aktuelle Fragen

Artikelsuche
Erwin Ruitenberg, 09.10.2014 07:51, 1 Antworten
Ich habe seit einige Jahre ein Dugisub LinuxUser. Dann weiß ich das irgendwann ein bestimmtes Art...
Windows 8 startet nur mit externer Festplatte
Anne La, 10.09.2014 17:25, 6 Antworten
Hallo Leute, also, ich bin auf folgendes Problem gestoßen: Ich habe Ubuntu 14.04 auf meiner...
Videoüberwachung mit Zoneminder
Heinz Becker, 10.08.2014 17:57, 0 Antworten
Hallo, ich habe den ZONEMINDER erfolgreich installiert. Das Bild erscheint jedoch nicht,...
internes Wlan und USB-Wlan-Srick
Gerhard Blobner, 04.08.2014 15:20, 2 Antworten
Hallo Linux-Forum: ich bin ein neuer Linux-User (ca. 25 Jahre Windows) und bin von WIN 8 auf Mint...
Server antwortet mit falschem Namen
oin notna, 21.07.2014 19:13, 1 Antworten
Hallo liebe Community, Ich habe mit Apache einen Server aufgesetzt. Soweit, so gut. Im Heimnet...