IE9はSVGをネイティブ実装するそうだ。SVGが主要なブラウザの標準機能になればWebアプリでもデータをグラフ化してビジュアル的に表示する、なんて要件も普通に求められるようになるだろうな。
というわけで今のうちにちょっと触れておこう。
SVGはXML形式のベクタ画像フォーマットなので、imgタグとかobjectタグで表示するだけではなく、XHTMLに直接埋め込む事ができる。もっともFirefox 3.6とか最近のブラウザでもHTMLへの埋め込みには対応してない*1ようだが、IE9が出るまでには対応されるだろう。
また、SVGはXMLなのでJavaScriptでDOMインターフェースを介して操作できる。現行のFirefoxでもJavaScriptを使ってSVGを動的生成し、HTMLに追加した場合は正しく表示されるようだ。
HTML埋め込みにせよ、JavaScriptで操作するにせよ従来のHTMLと同様に扱える。となれば恐れることは何もない。
XHTMLの要素とは名前空間が異なるので createElementNS で名前空間を指定して要素を生成する必要がある点に注意だ。
だいたいわかった。全く難しくないが、ちょー面倒くさい。jQuery等の便利ライブラリに慣れてしまった今となっては setAttribute なんてやってられん…。ほとんどのJavaScriptライブラリはXML名前空間に対応していないのでSVGを扱えないが、そのうちjQuerySVGとか出てくるんじゃないですかね…。ふつーのWeb開発者はそれまで待っても良いと思う