SVG in Internet Explorer

Michael Neutze
Play (24min) Download: MP4 | MP3

In recent years Internet Explorer has been like handcuffs to SVG development. There have been several attempts to find keys to loosen the chains. After Adobe’s abandonment of the plugin, those were mainly JavaScript libraries. Leveraging VML or Flash to draw vectors in Internet Explorer these attempts have been quite successful but had to remain their shim status. Then with Microsoft’s announcement of Internet Explorer 9 (ie9) on March 16, 2010 at their MIX conference, the commitment to native SVG support in Internet Explorer came as a long awaited relief. The testdrive site for the ie9 platform preview [1] showcases one of the election maps that were presented at SVGopen 2009 and had been adapted in time for the MIX announcement to work with the early state of the implementation. From this experience it became clear that SVG in Internet Explorer needs to be a topic at SVGopen 2010 and independent views should counter possible marketing ploys.

The presentation will try to evaluate what this might mean for practical SVG deployment currently and in the near future. Emphasis will be throughout on mixing SVG with HTML. I will discuss the state and and advantages of some of those shim technologies (SVG Web, Raphaël, dojox.gfx, JSXGraph) together with already published showcases of the technology in question. Furthermore I will analyze the current state of the SVG implementation, that can be witnessed in the evolving Internet Explorer 9 platform preview. The focus will be on availability of features with regard to practical use cases as well as standard conformity. The initial release of the IE9 platform preview suffered among other things the lack of the viewbox attribute thus making GIS applications very hard to implement.

Since browser adoption in large organizations takes significant time periods – think of the longevity of Internet Explorer 6 – and the non-availability of Internet Explorer 9 on Windows XP, SVG developers will face a long transition period. On the other hand the European Union mandated browser ballot on Windows operating systems might further erode market share for non standard compliant browsers. I will argue therefore that the SVG Web strategy of supporting standard SVG markup instead of JavaScript constructs – despite possible performance benefits of the latter – is the way to go. The transition from an SVG Web enhanced application to pure standard conformity is as simple as removing two script tags.

Finally sufficient time will be devoted to showing examples that already work in the Internet Explorer 9 platform preview with special emphasis if they worked right out of the box [2] or what kind of adaptations were needed to make them work [3]. Additionally the discussion will focus on mixing SVG with HTML. Microsoft claims that IE9 will be the first browser to support SVG right inside plain HTML, an approach that the SVG Web toolkit is mimicking already (in contrast to namespacing in XHTML that is used in Firefox, Webkit and Opera).