Several years ago, Jason, Louis and I were working on some performance testing of an internally-written application. We would run some performance tests, get a bunch of numbers and then import the numbers into an Excel spread sheet. Once in Excel, we would turn the numbers into pretty graphs so that we could visualize what the numbers meant.
That was a bit time-consuming, so we looked at some mechanisms to automate the graph-making part. In the process, we stumbled upon Scalable Vector Graphics (SVG). What we liked about SVG was that, using a simple XML file with our performance results, we could created an XSLT stylesheet and quickly get a graph of our performance results. It was relatively easy to create, even though our stylesheets grew in complexity.
Part of what made SVG so attractive was that it was easily supported. All the Dell computers in our office tended to have the Adobe SVG Viewer pre-installed, and so any machine that we walked up to was able to render the SVG graphs. If push came to shove, we could use a Batik Ant task and rasterize the SVG into an image file.
But then SVG started to become more inconvenient. Later versions of the Adobe SVG Viewer were more peculiar, especially where printing was concerned. And when I finally made the leap over to Firefox, I pretty much forgot what was so neat about SVG. I even tried out Jasc’s WebDraw SVG Editor (a nice WYSIWYG editor) and was somewhat unimpressed.
Except, last week, Firefox 1.5 was released with native SVG support. Turns out Firefox’s support is a bit more picky than the old Adobe SVG Viewer, so a lot of SVG pages on the web won’t render properly, but it’s refuelled my interest in SVG. Not all of the features have been implemented yet, but all the common ones have.
Cool thing number one: the latest version of VISIO supports an SVG export mode. I’m not a fan of VISIO, mostly because I move around from machine to machine a lot. When I walk up to a machine, chances are, it’ll have Word and Powerpoint installed, but it won’t have VISIO installed. That impedes my ability to use VISIO drawings (and don’t even get me started about the VISIO reader — it’s caused me no end of grief).
Cool thing number two: I found the Inkscape Open Source SVG editor last weekend, and quite enjoyed playing with its features. Here’s a cool vector graphic that I made, using Inkscape’s Bitmap Trace function.
Cool thing number three: unlike images, Vector Graphics are scriptable, the same way web pages are scriptable. That makes it possible to do fun things like implement Tetris using SVG.