Sonntag, 1. April 2007

SVG und Horoskopzeichnungen?

Mein letzter Weblog-Eintrag, der Vergleich von Java und JavaScript, lässt es bereits ahnen: Ich bin dabei, mich nach einer Alternative zu den Java Applets umzusehen, die ich bislang für die astrologischen Rechenseiten bei http://www.astrotexte.ch/ eingesetzt habe.

Ich habe nie viel Fleiss auf das Look & Feel meines Horoskop-Applets verwendet - es reichte mir, dass die Positionen der Planeten im Tierkreis gut zu erkennen sind. Wer es schöner haben will, kauft sich sowieso ein kommerzielles Programm.

An diesem funktionalen Gesichtspunkt werde ich festhalten: Nicht Ästhetik, sondern Funktionalität soll im Vordergrund von astrotexte.ch stehen. Dennoch werde ich zur Visualisierung von Horoskopgraphiken einmal auf eine andere Technologie umsteigen: Nicht mehr Applets, sondern voraussichtlich Scalable Vector Graphics (SVG).

Bei den Scalable Vector Graphics handelt es sich um ein XML-basiertes Graphikformat, das von einigen moderneren Browsern wie Firefox bereits nativ interpretiert wird. Für alle anderen Browser, auch den Internet Explorer, steht - neben anderen - ein Plugin von Adobe zur Verfügung.

Das Format hat einige Vorteile, die es für mich interessant machen. Vor allem ist es frei skalierbar und wird in jeder Auflösung so scharf dargestellt, wie es das Ausgabegerät eben ermöglicht. Denn die graphische Information wird nicht in Form von Anweisungen zum Färben von Pixeln gespeichert (wie bei Rastergraphiken, z.B. "Pixel bei x=356, y=217 mit Farbe FF0FCC einfärben"), sondern in Form einer Liste geometrischer Elementaranweisungen, z.B. "Kreis um (100,100) mit dem Radius 90, Stiftdicke 1, Stiftfarbe grün".

Solche Anweisungen lassen sich im zur Verfügung stehenden Raum mit der jeweils höchstmöglichen Auflösung realisieren. Man kann ein Bild so anbieten, dass die Bildgrösse vom Benutzer einstellbar ist und die Darstellung sich jeweils an die aktuelle Grösse anpasst. Aber so gross auch immer der Bildbereich gemacht wird - nie entstehen die typischen, von Rastergraphiken bekannten Zacken. Hiermit steht SVG in der Tradition von PostScript und pdf, und so ist es auch kein Wunder, dass bis vor kurzem das meistverwendete SVG Plugin von Adobe angeboten wurde.

Darüberhinaus erlaubt das SVG-Graphikformat die Verwendung von XSL- und CSS-Stylesheets, so dass die Präsentation vollständig von der Datenbasis getrennt werden kann. Mit JavaScript sind auch interaktive Graphiken möglich.

Es gibt vor allem zwei Dinge, die mich davon abhalten, nun frisch zur Tat zu schreiten, das HoroApplet auf den Müll zu werfen und es durch SVG-Horoskope zu ersetzen. Dies obwohl ich bereits vielversprechende Experimente mit dem Graphikformat gemacht und schon das erste Beispielhoroskop gerendert habe - mit der zu erwartenden Kombination von
  • XML (das nur die Horoskopdaten enthält),
  • XSL-Stylesheet (das die Graphikanweisungen enthält),
  • JavaScript (das die Umrechungen von Polar- in cartesische Koordinaten durchführt sowie in Schleifen wiederkehrende Anweisungen wie die Gradmarkierungen herstellt)
  • und CSS (womit Dinge wie Hintergrund- und Stiftfarben gecustomized werden können)

Der eine Grund für meine Zurückhaltung ist, dass Adobe ihr Plugin zu Anfang 2007 aus der Wartung genommen hat. Die offizielle Begründung dafür, es gebe ja nun genügend andere Implementierer, überzeugt mich nicht. Wenn eine Technologie wirklich zukunftsträchtig ist, dann stösst man nicht einfach eine zentrale Viewing-Komponente dafür ab! Ich habe eher im Gegenteil das Gefühl, dass der SVG-Zug aus Sicht von Adobe nicht hinreichend ins Rollen gekommen ist. Und ich habe natürlich keine Lust, Zeit in eine Technologie zu investieren, die man nächstes Jahr vielleicht schon als netten Versuch belächeln wird (schade wär's allerdings).

Und der zweite Grund: An diesem Wochenende war die Tagung der Sektion Mundanastrologie des Deutschen Astrologenverbands. Ich kam - wie immer - mit vielen Anregungen zurück, und es ist mir klargeworden, dass es weit wichtiger ist, inhaltliche astrologische Arbeit zu vertiefen, statt meine Zeit damit zu verschwenden, an netten Horoskopgraphiken herumzubasteln.

Keine Kommentare :