4.2Farbangaben
SVG kennt verschiedene Regeln zum Schreiben der Farbinformationen. Das rührt daher, daß SVG eine sehr enge Verbindung mit CSS (siehe CSS) eingeht. So finden sich etwa Attribute wie fill
und stroke
auch in CSS wieder, wo sie z.B. mittels style="fill:red"
benutzt werden können.
- SVG-Farbnamen
Oft verwendete Farbnamen sind in SVG bereits vordefiniert. Darunter befinden sich u.a. Standardfarben wiered
,blue
odergreen
, aber auch exotischere Farben wie z.B.goldenrod
. Eine Liste aller Farbschlüsselwörter findet man auf den SVG-Seiten des W3Cs [ W3C04c].
Bsp.:fill="red"
- Hexadezimal-Darstellung
Diese Schreibweise wird auch in HTML verwendet. Hier wird die Farbe in drei Hexadezimalzahlen zerlegt (#RRGGBB
), wobei die erste dem Rot-Wert, die zweite dem Grün-Wert und die dritte dem Blau-Wert der Farbe entspricht. FF16 bzw. 25510 bedeutet dabei 100%, 0016 bzw. 010 dagegen 0% des jeweiligen Farbwerts. Übrigens stellt SVG auch noch eine Kurzschreibweise zur Verfügung, in der anstatt sechs Stellen nur drei Verwendung finden (#RGB
). Eine SVG-Anwendung wandelt dieses Format jedoch intern durch Duplikation der jeweiligen Stelle in die gewohnte sechsstellige Form um.
Bsp.:fill="#FF0000"
oderfill="#F00"
- RGB-Darstellung
Als dritte Variante bietet SVG dem Nutzer die Möglichkeit an, die Farbwerte als natürliche Zahlen anzugeben. Wie bei der hexadezimalen Darstellung ist hier der Maximalwert von Rot, Grün und Blau jeweils 255 und der Minimalwert 0. Damit der Interpreter weiß, daß er dieses Format verwenden soll, müssen die einzelnen Werte mitrgb()
umschlossen werden. Auch hier existiert eine alternative Schreibweise. Alle Farbwerte können nämlich zusätzlich in Prozent angegeben werden.
Bsp.:fill="rgb(255, 0, 0)"
oderfill="rgb(100%, 0%, 0%)"
SVG beherrscht noch weitere Möglichkeiten, wie Farben angegeben werden können (z.B. ICM-Farbprofile), jedoch sollten die drei eben aufgeführten Varianten genügen. Für nähere Informationen sei auf die SVG-Spezifikation verwiesen.