Hallo zusammen.
Dies soll mein Sammelthread zum Thema SVG werden.
Inkscape besitzt ja den Editor, dessen GUI aber weit entfernt ist, von dem, was man in ein SVG Dokument schreiben könnte. Vor allem nervig ist, dass exaktes Arbeiten dort nicht möglich ist.
Ich bin deshalb dabei, mein erstes SVG händisch zu erstellen. Dieses soll aber zugleich dynamisch sein. Die Aufgabe ist, im Dokument Bauteile modulartig zu verbauen. Dies möchte ich mit Javascript machen.
Wo stehe ich bisher mit meinem Lernen
Meine Dokumentation:
http://www.w3.org/TR/SVG11/expanded-toc.html
Probleme mit der Dokumentation. Ich verstehe zum Teil die DOM Beschreibung nicht.
Frage: Gibt es gute Tutorials, die zeigen, wie man Javascript in SVG typischerweise zum laufen bringt.
Irgendwann soll das zusammengebaute Produkt ja gespeichert werden können. Das heisst, ich brauche ein XHTML Formular, welches Daten sendet an den Server (dort ist Perl verfügbar).
Frage:
Was ist besser:
SVG als Fragment in einem XHTML Dokument?
XHTML als Fragment in einem SVG Dokument?
(Browser Kompatibilität will ich hier mal aussen vor lassen. Ich rechne nicht mehr mit MSIE6. Ich weiss auch nicht, ob das dass öffentlich zugänglich wird.)
Problem CSS:
Ich sehe, dass ich CSS verwenden kann (also nich auf XSL angewiesen bin)
Nun ist es so, dass in CSS aber Eigenschaften angesprochen werden, welche im CSS2 Standard gar nicht beschrieben werden.
Wenn es in SVG ein Attribut stroke gibt, dann steht mir dieses Attribut scheinbar automatisch als CSS Eigenschaft zur Verfügung.
Frage:
Das ist schön. Aber darf ich mich darauf verallgemeinernd verlassen?
Problem:
In einem HTML Dokument werden, wenn nicht explizit unterdrückt, Scrollbalken angezeigt, sobald die Grösse den verfügbaren Viewport überschreitet.
Nicht so in SVG. Dort werden nur dann Scrollbars angezeigt, wenn ich dem äussersten <svg> Element eine "height" und "width" gebe. Entweder mache ich diese Angabe unnötig gross, oder der Inhalt kann unter Umständen nicht vollständig angezeigt werden.
Schreibe ich <svg overflow="scroll" />, so wird nur der vertikale Scrollbar angezeigt, nicht aber der horizontale, obwohl der Inhalt grösser ist. (Die Angabe im <style /> verhält sich gleich. )
Wie erreiche ich Scrollbars für beide Richtungen, wenn notwendig?
Ich teste mit Firefox 2.0. Kann sein, dass mangelhafte Unterstützung vorliegt.
Was muss ich beachten? Gibt es hier eine Übersicht über die SVG Unterstützung in Firefox, damit ich mich nicht zu Tode teste, um etwas zu erreichen?
mfg Beat