Windows Internet Explorer 9

IE9がSVGをサポートする流れを受け、WebデベロッパやWebデザイナの間でSVGへの関心が高まっている。iPhoneやiPadのように頻繁にズーム機能を利用するデバイス、iPhone 4のレティナディスプレイのように高いDPIを持ったデバイスの性能をフルに発揮するには、ビットマップ画像よりもSVGの方が相性がいい。また、スケーラブルでポータブル、そのうえどのブラウでも再現性が高いインタラクティブなコンテンツを制作するとなると、SVGがもっとも有力な候補のひとつとなる。

しかし、SVGが普及するという見方に否定的な向きもある。Flash陣営から特にそうした意見が出ることが多い。SVGの仕様そのものが複雑であり、HTML5の仕様も複雑。すべてのブラウザが同じ機能を実装し、さらに互換性を実現するというのは現実的ではないとし、現段階ですでに同様の機能を提供しているFlashの方が現実的だという意見を持っている。

こうした両方の側面からの現状がわかる興味深い記事がGetting Ready for SVG Open - IEBlogに掲載されている。IE9の開発者がSVGの実装、特にSVG Diceと呼ばれるSVGで実装したサイコロ振りデモンストレーションの制作を通じて、SVGの性能と互換性の実現がとても困難であることを痛感したという内容になっている。いくつもの理由が紹介されているが、内容とまとめると次のとおり。

  • W3C SVG Test Suiteは仕様が実装されているかどうかをチェックするが、一致性や互換性まではチェックしておらず、必要十分とは言いがたい状況にある。
  • SVG仕様は2,000をこえる要望を持っているが、これはほかのWeb技術の仕様と比べてもかなり多い。2,000を超える要望の組み合わせに、さらにHTML5など他の仕様との関連が入ってくるなど、本質的に複雑な状況にある。
  • SVG仕様のモジュールが要求している機能と、そうした機能をチェックするためのSVG Test Suiteのテストの数のバランスが、明らかにとれていない。
  • SVGはもともと静的なコンテンツを表現するために導入された。登場してからだいぶ長いが、インタラクティブなコンテンツを表現するためにWebの世界に登場するようになったのは結構新しい。このため、開発者もブラウザベンダもまだなれていない。
  • 試験するコンポーネントの不在。一致性や互換性を試すことができるより複雑なSVGコンテンツが存在していない。

SVG Diceレンダリング例 - IE9 PP4

SVG Diceレンダリング例 - Firefox4開発版

SVG Diceレンダリング例 - Chrome7開発版

SVG Diceレンダリング例 - Opera 10.61

Getting Ready for SVG Openでは、こうした状況にあるSVGの互換性を向上させるには、より複雑なSVGコンテンツを制作して互換性をチェックすることだと説明している。SVGの仕様が複雑であるため互換性の実現は難しいという方向性ではなく、より多くの試験コードの提供と、互換試験用のSVGコンテンツの提供を通じて、ほかのブラウザとSVGのレンダリングや動作に関して高い互換性の実現を目指すという姿勢が読み取れる。IE9でSVGが重要な機能であるという取り組みは今後も変わらないとみられる。