4.7Stifte
Die Umrandung eines Objekts wird auch als Stift bezeichnet. Die Stifteigenschaften verhalten sich genauso wie die Fülleigenschaften eines Objekts. Hinzu kommen aber noch einige zusätzlich Attribute, mit denen sich das Aussehen eines Stifts verändern läßt.
4.7.1Die Liniendicke
Die Stärke einer Linie (also auch einer Umrandung) wird mit Hilfe des Attributs stroke-width
festgelegt, das none
oder positive Längenangaben besitzen kann.
4.7.2Linienenden
Die folgende Eigenschaft betrifft die Linienenden. Mit sogenannten "line-captions" kann man das Aussehen des Anfangs und des Endes einer Linie verändern. Das Attribut stroke-linecap
kennt dazu drei unterschiedliche Modi:
butt
- zeichnet rechteckige, an den Endpunkten beschnittene Enden (Standard)round
- zeichnet abgerundete Endensquare
- zeichnet rechteckige Enden über die Endpunkte hinaus
4.7.3Linienverbindungen
Eine ähnliche Eigenschaft, wie die gerade in Linienenden vorgestellte zur Beeinflussung der Ränder, existiert ebenso für die Verbindungen zwischen zwei Linien. Das Attribut stroke-linejoin
ist dafür verantwortlich, wie die Spitzen, die durch das Aufeinandertreffen zweier Linien entstehen, gezeichnet werden sollen. Auch hier gibt es drei Modi:
miter
- zeichnet eckige Spitzen (Standard)round
- zeichnet abgerundete Spitzenbevel
- zeichnet abgeschnittene Spitzen
Der Standardwert für stroke-linejoin
ist der Wert miter
. Wenn dieser Modus aktiviert ist, gibt es noch eine weitere Eigenschaft (stroke-miterlimit
), die einen Wert größer gleich oder gleich 1
besitzen muß. Da der miter
-Modus spitze Linienverbindungen erzeugt, die je nach Auftreffwinkel größer oder kleiner sind, kann man mit Hilfe des Attributs stroke-miterlimit
ein Limit für den Übertritt festlegen. Wird also z.B. eine Spitze länger als im Limit angegeben, so wird der restliche Teil einfach abgeschnitten. Das Limit steht übrigens im Verhältnis zur Liniendicke. Im großen und ganzen geschieht hier beinahe dasselbe wie im bevel
-Modus, wobei hier allerdings das Limit nicht geändert werden kann und die Spitzen immer um einen bestimmten Wert beschnitten werden.
4.7.4Segmentierte Linien
Die letzte hier vorgestellte Stifteigenschaft ist für die Aufteilung einer Linie in einzelne Segmente zuständig. Diese Eigenschaft nennt sich stroke-dasharray
und erwartet als Wert entweder none
, was eine durchgehenden Linie generieren würde, oder eine komma-separierte Liste von Prozentwerten. Dabei verwendet der Interpreter jeden zweiten Wert als Lücke. Folgendes Beispiel soll dies etwas anschaulicher gestalten:
<?xml version="1.0"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> <svg version="1.1" xmlns="http://www.w3.org/2000/svg"> <g style="fill:none;stroke:black;stroke-width:5;"> <line x1="10" y1="10" x2="190" y2="10" stroke-dasharray="1%, 1%" /> <line x1="10" y1="30" x2="190" y2="30" stroke-dasharray="1%, 4%, 1%, 1%, 2%, 1%, 1%, 1%" /> <line x1="10" y1="50" x2="190" y2="50" stroke-dasharray="6%, 2%, 3%, 1%, 1%, 2%" /> </g> </svg>