Scalable Vector Graphics

Scalable Vector Graphics (SVG) ist eine Sprache zur Beschreibung zweidimensionaler Vektorgrafiken in XML. Darüberhinaus unterstützt SVG Animationen mittels SMIL oder der Manipulation des SVG-DOM mit Hilfe eingebetteter Funktionen (Beispielsweise via ECMA-Script oder TCL).

SVG wurde im September 2001 eine W3C-Empfehlung. Man kann also erwarten, dass die nächste Generation der Webbrowser es von sich aus unterstützen. Zur Zeit ist dazu ein Plugin notwendig, wie z.B. der SVG Viewer von Adobe. SVG-Dateien können auch in externen Editoren und Viewern betrachtet werden.

Eine Variante von Mozilla unterstützt eine Teilmenge von SVG ohne dass ein Plugin nötig ist (http://www.mozilla.org/projects/svg/ ).

Eine SVG-Datei besitzt die Endung *.svg oder in gepackter Form *.svgz.

Table of contents
1 SVG Grundstrukturen
2 SVG-Viewer
3 SVG-Editoren
4 Programme die SVG unterstützen
5 Konferenzen
6 Literatur
7 Weblinks

SVG Grundstrukturen

Grundgerüst

Jede SVG-Datei beginnt, wie es bei
XML-basierten Sprachen üblich ist, mit der XML-Deklaration und der Dokumenttypdeklaration, die den benutzten Namensraum beschreibt. Dazu wird bei letzterem ein Verweis auf die entsprechende DTD-Datei eingefügt. Danach kann schon das Starttag kommen. Die SVG-Datei wird durch das abschliessende Endtag abgeschlossen.




   .... Inhalt der SVG-Datei

Beim SVG-Starttag () wird auch gleich die Breite und Höhe des Ausgabebildschirms definiert.

Graphische Primitiven

Alle graphischen Objekte in SVG bauen auf einfachen graphischen Grundelement auf. Komplexere Objekte sind dabei aus mehreren einfachen Objekten zusammengesetzt.

Pfad

Der Pfad ist das eigentliche Grundelement in SVG. Aus ihm können alle anderen Objekte (Kreise, Rechtecke, Polygone etc.) aufgebaut werden. Da das aber teilweise sehr umständlich ist, hat man diese häufigen Formen extra mit eigenen Beschreibungen versehen, die im Anschluss aufgeführt werden.

Der Pfad wird im Attribut (d) entweder durch Koordinatenpaare (absolut) oder durch Vektoren (relativ) beschrieben. Großbuchstaben werden von Koordinaten gefolgt, Kleinbuchstaben von Vektoren. Diese Koordinaten und Vektoren geben die Anweisung wie der Pfad gezeichnet werden soll.

Beispiel: Der absolut beschriebene Pfad...

ist identisch mit dem relativen

Für horizontale und vertikale Linien existiert eine entsprechend vereinfachte Notation, für Ellipsen und Kreise ist eine spezielle Notation mit sieben Werten erforderlich.

Kreis

Der
Kreis wird mindestens durch den Radius (r) definiert. Optional kann die Position des Mittelpunktes durch die Atribute cx und cy festgelegt werden. Füllung, Art der Umrisslinie oder Transparenz werden durch das Attribut style definiert.

   

Ellipse

Die
Ellipse kann wird durch die zwei Halbachsenradien definiert (rx und ry). Alle anderen Attribute sind die selben wie beim Kreis.

Rechteck

Ein
Rechteck kann auf zwei Arten definiert werden. Zum einen indem man die obere linke Ecke durch die Koordinaten (x1 und y1) und ebenso die untere rechte Ecke durch die Koordinanten (x2 und y2) definiert. Die andere Möglichkeit ist die Beschreibung durch die obere linke Ecke mit den Koordinaten (x und y) und die Breite (width) und Höhe (height).


Möchte man die Ecken des Rechteckes abrunden kann man das mit Hilfe der Attribute (rx und ry) bewerkstelligen.

Linie

Eine einfache gerade Linie wird durch die beiden Endpunkte in SVG beschrieben.

Polyline

Um eine Linie über mehrere Stützpunkte zu definieren benutz man die Beschreibung als Polylinie. Dabei werden die einzelnen Koordinatenpaare der Stützpunkte einfach fortlaufend hintereinander geschrieben. Die Linie wird von ersten Punkt aus zum zweiten gezogen und von dort weiter zum dritten Stützpunkt und so weiter.

Polygon

Ein
Polygon (Vieleck) wird durch seine Eckpunkte beschrieben. Wie bei der Polyline werden auch hier alle Koordinatenpaare einfach hintereinander geschrieben.



Text

Zeichen, Text können durch mit Hilfe des Befehles definiert werden.

 Hallo Welt!  

SVG-Viewer

SVG-Editoren

Freie Software

Kommerzielle Software

Programme die SVG unterstützen

Das Vektorprogramm Freehand unterstützt SVG nicht, da es von der Firma Macromedia kommt, die Flash vorzieht.

Konferenzen

SVG Open organisierte schon zweimal eine internationale Konferenz, die sich mit allem rund um das Thema SVG beschäftigte.

Literatur

  • Marcel Salathé, SVG Scalable Vector Graphics, ...für professionelle Einsteiger, Verlag Markt+Technik, ISBN 3827261880

Weblinks





Websites: Tagoror | Guajara | Tacoronte Guia | Todo Gomera | Deranet | Radioaficionados | Cinebso | Mi Buscador

Enciclopedia On Line: GNU FDL.