Farbe mit Latex

Man gestaltet ein Dokument, welches besondere Hervorhebungen haben soll und hätte gerne farbige Boxen - oder man will Quelltext in einem Dokument, welches sowieso nicht ausgedruckt werden soll hervorherben? Wie macht man das?

Als erstes benötigt man das Packet color. Es gibt auch noch andere Packete, die mehr Farbspiele erlauben, ich gehe jedoch erst einmal nur auf dieses ein.

Die Standartfarben, welche unterstützt werden, sind black, white, green, red, blue, yellow, cyan und magenta. Und es gibt verschiedene Möglichkeiten, irgendetwas farbig hervorzuheben.

Zum einen könnt ihr natürlich farbigen Text einbinden. Dies geschieht mit dem Befehl
\textcolor{Farbe}{Ich bin der farbige Text}
Einen farbigen Rahmen um einen Text erzeugt man wie folgt:
\fcolorbox{Rahmenfarbe}{white}{Text, der in einer Box steht, die einen Rahmen in einer von dir definierten Farbe hat}.
Wie ihr vielleicht seht, kann man in der zweiten geschweiften Klammer eine weitere Farbe eingeben. Hiermit bestimmt man die Hintergrundfarbe der Box.Will man z.b. eine Box mit gelbem Hintergrund und einem roten Rahmen, würde dies wie folgt aussehen:
\fcolorbox{red}{yellow}{Roter Rahmen um einen Text, der in einer gelben Box liegt}.

Möchte man keine gesonderte Rahmenfarbe haben, kann man natürlich die Rahmenfarbe in der gleichen Farbe definieren. Noch einfacher geht es mit dem Befehl
\colorbox{Farbe}{Text, der mit einem farbigen Hintergrund erscheinen soll}.

Innerhalb dieser Boxen kann man ganz normal weiterschreiben. Matheumgebungen, Tabllen - soweit ich dies bis jetzt festgestellt habe, ist alles möglich ^-^.

(f)colorbox hat jedoch ein großes Problem. Schreibt man einen langen Text darin, erfolgt kein automatischer Umbruch. Dies kann man beheben, in dem man eine \parbox einbettet (Dies ist wahrscheinlich nur eine von vielen Möglichkeiten, wie immer bei LaTeX ^-^''). Das ganze sieht dann wie folgt aus:
\colorbox{Hintergrundfarbe}{\parbox{0.5\textwidth}{Hier der Text, der in der Box erscheinen soll}}
Der Vorteil von \parbox ist, dass ihr gleichzeitig die Breite eurer farbigen Box einstellen könnt. Ihr könnt diese in den üblichen Angaben (px,pt,cm,...) angeben oder aber auch in einer x-fachen Textweite. 0.5\textwidth bedeutet hier: Mache die Box gerade halb so groß, wie die gesammte Breite des Textes lang ist.

Diese Box macht jedoch keine Seitenumbrüche mit, d.h. eine Box wird nur auf einer Seite bleiben. Dies ist also keine Lösung um größere Umgebungen mit einem farbigen Hintergrund zu hinterlegen.

Es gibt auch die Möglichkeit, komplette Seiten farbig zu hinterlegen. Dies geschieht mit Hilfe von
\pagecolor{Hintergrundfarbe}.
Vorsicht! Ihr müsst diesen Befehl nach der Seite die ihr farbig habt wieder "rückgängig" machen. Denn die Seitenfarbe ist für die aktuelle und alle nachfolgenden Seiten. Am einfachsten macht ihr dies, in dem ihr nach der farbigen Seite den Befehl \pagecolor{white} aufruft.

Ich will mehr Farben !? ;) Die einfachste Möglichkeit ist das Einbinden der vordefinierten Farben des named-Farbschemas. Ihr müsst dafür vor \begin{document} folgenden Befehl ausführen lassen:
\input{dvipsnam.def}
Damit wird eine Liste von vordefinierten Farben eingebunden, auf die ihr nun zugreifen könnt. Schön aufgelistet findet ihr sie in der Anleitung Graphics and Colour wiht LaTeX von Patrick W. Daly. Ihr greift auf diese Liste zu, in dem ihr hinter jeden bisher eingeführten Farbenbefehl die Option [named] einbindet. Das kann dann z.B. so aussehen:
\colorbox[named]{MidnightBlue}{\textcolor[named]{GreenYellow} {Hier ist gelbgrüner Text auf mitternachtsblauem Hintergrund}}

Natürlich könnt ihr euch auch eigene Farben definieren. Hierfür verwendet man den Befehl
\definecolor{Farbname}{Farbmodell}{Werte}.

Es stehen hier drei verschiedene Farbmodelle zur Verfügung. gray, RGB und CMYK.

Gray verwendet man, wenn man einfach Grautöne erstellen möchte. Die Werte könnt ihr zwischen 0 und 1 varrieren lassen. Setzt ihr 0 ein, erhaltet ihr Schwarz, bei 1 Weiß und dazwischen eben verschiedene Grautöne ;). Ein Hellgrau würde dann z.B. wie folgt definiert werden
\definecolor{hellgrau}{gray}{0.85}
Die so neu definierte Farbe könnt ihr genauso verwenden, wie die Standartfarben.

Richtige Farbe erhält man mit dem RGB und dem CYMK-Modell. Da das Verfahren für beide Modelle analog geht, beschreibe ich es nur für RGB.

Praktisch ist es, wenn man zur Auswahl der Farbe ein Farbtool wie z.B. PkColorPicker besitzt. Man wählt dort eine Farbe aus, und das Programm zeigt einem die RGB Werte an.

Diese müssen, da die Standartausgabe der Werte auf einer Skala von 0-255 geschieht, umgerechnet werden weil LaTeX eine Skala von 0-1 erwartet. Wir teilen also die vom Programm ausgegebenen Werte durch 255. Und geben sie in der Werteklammer in der Form: {R,G,B} an ;).

Und damit kann man dann schon ganz viel Farbe in das Dokument bringen ;).

8 comments

  1. Standard! *seufz*

  2. Hehe, das mit Standard war auch meine erste Reaktion kurz vor Schluß :-) Ansonsten ein hilfreicher Artikel.

    Danke und Gruß,
    stoph.

  3. jetzt ann ichs ja mal loswerden: wie sick isn bidde die werteangabe in latex. in allen programmen der welt, gibt man halt 255 oder 169 oder 0 oder 1 an.

    aber wieso bitte durch 255 teilen? so eine scheiße. wer programmiert so weltfremd.

    danke für die erkenntnis: die suche nach dieser wertvollen information hat mich drei jahre meines lebens gekostet.

  4. Kurz, präzise und sehr hilfreich

  5. Du hast mich gerettet. Nun kann ich endlich in der Picture-Umgebung Farben einsetzen und bunte Bilder malen.

    Danke!

  6. Sehr nützlicher Artikel!

  7. …und wie schafft man es, in einer farbigen Box einen farbigen Text zu schreiben?

  8. …OK, hat sich erledigt, steht ja weiter oben… ;-)