20.01.2013 Aufrufe

XML » SVG Presenter - Carto:net

XML » SVG Presenter - Carto:net

XML » SVG Presenter - Carto:net

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>XML</strong> <strong>»</strong> <strong>SVG</strong> PRESENTER | STRUKTURIERTE MULTIMEDIA-PRÄSENTATION IM WEB 141<br />

spiel in [Listing, Abb.5.4.2.1] zu entnehmen ist, ist auch das <strong>SVG</strong> zugrunde liegende Grafikmodell durch<br />

den so genannten „Painter’s Algorithm“ [vgl. Watt02:33] gekennzeich<strong>net</strong>: Einzelne grafische Objekte werden<br />

schlichterdings durch deklarativ darauffolgende Elemente überdeckt – ein zusätzlicher „z-Index“, wie<br />

noch in Flash oder HTML benötigt, entfällt. Dieses (im Prinzip ja „logische“) Prinzip „erhellt“ nicht nur die<br />

syntaktische Struktur der <strong>SVG</strong>-Datei, sondern begünstigt überdies dessen Übertragung: Ähnlich wie beim<br />

„progressiven Rendering“ von HTML-Dateien können <strong>SVG</strong>-Grafiken so sequentiell „gestreamt“ und direkt<br />

gezeich<strong>net</strong> werden, da später folgende Objekte ihre „Vorgänger“ kurzerhand übermalen.<br />

5.4.2.1 Deutlich sauberer als der Vorgänger VML<br />

Im Gegensatz zum direkt an die PostScript-Syntax angelehnten<br />

PGML wird im Rahmen der <strong>SVG</strong>-<br />

Spezifikation hingegen eine verstärkte Konzentraion auf Cascading Style-Sheets [CSS98] deutlich: Im Gegensatz<br />

zum in dieser Hinsicht recht unlogisch vorgehenden VML-Format [s.5.4.3] vermag <strong>SVG</strong> an dieser<br />

Stelle jedoch inhaltlich zwischen mittels „direkten“ <strong>XML</strong>-Attributen realisierten Positionierungs und Größenangaben<br />

(x,y,height,width) und im eher „stilistischen“ Bereich angesiedelten Stilangaben<br />

(fill,stroke…) zu unterscheiden und ermöglicht somit eine deutlich sinnvollere Anwendung des Style-<br />

Sheet-Prinzips. Zwar sind auch im Rahmen von <strong>SVG</strong> „redundante“ Deklarationen (beispielsweise die Determinierung<br />

eines Füllwerts sowohl als direktes Attribut als auch CSS-Angabe) möglich – wie bereits bei<br />

HTML werden die „direkten“ <strong>XML</strong>-Attribute in diesem Falle jedoch stets durch deren CSS-Pendants überdeckt,<br />

was auch eine konsequente Anwendung umfassender Style-Sheet-Klassen möglich macht [vgl.<br />

Behm02:55].<br />

Ähnlich wie in VML und Flash lassen sich nun überdies so genannte „Symbole“ definieren, die über ein korrespondierendes<br />

use-Tag mit entsprechenden Transformationseigenschaften beliebig oft innerhalb einer<br />

<strong>SVG</strong>-Zeichnung zur Anwendung kommen und die Bilddaten über deren Wiederverwendbarkeits-<br />

Eigenschaft so überschaubar und kompakt halten kann. 1 Auch über die so genannten „Rendering-<br />

Eigenschaften“ lassen sich, wie bereits im VML-Vorgänger die grafischen Darstellungseigenschaften (Anti-<br />

Aliasing, Qualitäts- oder Geschwindigkeits-optimierung) präzise regeln.<br />

5.4.2.2 Kontrovers: Die verzweigten Pfade des path-Tags<br />

„Nicht unumstritten“ [vgl. Tard01] erscheint hingegen Umsetzung des zentralen<br />

path-Elements, welches<br />

die Definition beliebiger Linien- und Bézierpfade ermöglicht: Im Gegensatz zum PostScript-Verwandten<br />

PGML-Entwurf, der an dieser Stelle die „saubere“ Einbindung entsprechender Tochterknoten vorsieht<br />

[s.5.2.3], geht <strong>SVG</strong> an dieser Stelle, ähnlich wie bereits in der VML-Spezifikation „im Grunde völlig unXM-<br />

Lisch vor“ [Behm02:56]: So enthält stets das obligatorische d-Attribut des (im übrigen alleinstehenden) 2 die<br />

einzelnen Pfadknoten samt Kontrollpunkte als einzelne, überdies „unkonventionell“ strukturierte Zeichenkette,<br />

was nicht nur die Lesbarkeit dieser Notation deutlich einschränkt, sondern überdies eine Interpretation<br />

der Pfaddaten über die DOM-Schnittstelle deutlich erschwert: 3<br />

= <br />

Listing 5.4.2.2: Definition eines Dreiecks (�) in <strong>SVG</strong> mit jeweils absoluten (li.) und relativen Koordinaten (re.).<br />

1<br />

vgl. hierzu [ibid] pp.56-57<br />

2<br />

Anm: Dies heisst, dass der Pfad i.d.R. nicht „umfassend“ ist (…), sondern lediglich einen einzelnen „Marker“ () darstellt.<br />

3<br />

s. hierzu die entsrpechenden Ausführungen von Jon Ferraiolo: “In recognition that path data into a single attribute makes DOM access<br />

difficult…”, aus: <strong>XML</strong> Developer Mailing List (Thread „ What is wrong with <strong>SVG</strong>?”) vom 6. März 2000: http://lists.xml.org/archives/xmldev/200003/msg00199.html<br />

[16.2.03]

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!