October 3, 2004

vectors on a grecian urn

Web enthusiasts know that the world of two-dimensional computer graphics can be crudely subdivided into two main groups: bitmapped and vector images. Jpeg and gif fall into the former camp; swf (macromedia's shockwave flash) into the latter. The different file formats reflect different media ontologies: bitmapped images represent information about the location and value of each individual pixel, while vector images represent paths, lines, and shapes. Macromedia Flash notwithstanding, we've become largely accustomed to a bitmapped web ecology. This was not, however, a foregone conclusion, as the history of computing makes clear: Ivan Sutherland created the first interactive vector drawing application, Sketchpad, back in 1962. While the promise of vector graphics was largely eclipsed by bitmapped graphics in the decades to follow, that situation is poised to change, thanks in no small measure to the influence and standardization of the Flash format. But it's not Flash that has really caught my attention of late. It's Scalable Vector Graphics, or SVG.

My interest lies primarily with the semiotics of SVG, a relative newcomer to the computer graphics scene. Depending on how things play out in the next couple of years, SVG may become a real contender for the brass ring of vector graphics. What sets it apart from Flash's proprietary format is that it is an open standard. It is also, crucially, a text rather than binary format. Put differently, SVG is a linguistic and mathematical code--XML compliant, no less--for describing pictures. Unlike bitmapped images, SVGs are human readable and writable as well as machine readable and writable. I can, for example, code my image in my favorite text editor (Notepad), view it in my favorite browser with a plug-in (Mozilla), or open it in my favorite drawing program (Adobe Illustrator).  With the right software, I can toggle between text and image views, authoring the image in a text-editing environment one minute and drawing it in a visual-editing environment the next, hand-coding it and auto-coding it, shifting seamlessly through semiotic gears. 

Here are a couple of screenshots demonstrating SVG's native ekphrasis. The first is a circle I created in Sketsa, a vector drawing application.  The screenshot shows the circle rendered in the visual editor, but it was hand-coded in the text editor.

Here is the underlying code:

<?xml version="1.0" standalone="no"?>

<svg contentScriptType="text/ecmascript" width="400.0" xmlns:xlink="http://www.w3.org/1999/xlink"
zoomAndPan="magnify" contentStyleType="text/css" height="400.0" preserveAspectRatio="xMidYMid meet"
xmlns="http://www.w3.org/2000/svg" version="1.0">
<circle fill="blue" r="100" cx="200" cy="200" stroke="red" stroke-width="4"/>
<text x="79" y="50" style="font-size:19; fill:red; font-family:palatino; font-weight:bold">
computational ekphrasis
</text>
</svg>

Readers familiar with html, sgml, and xml will recognize the syntax and vocabulary of elements and attributes.

Most web browsers still won't render native SVG content without a third party plug-in tool, which is why I'm providing screenshots. Adobe's SVG viewer is a good stopgap measure for the time being.

(An aside about the text displayed above the image: the words "computational ekphrasis" render as character data, meaning the individual letters can be copied, searched, indexed, cut-and-pasted, etc.)

The second screenshot shows a digital photograph of a scaled-down replica of the Townley urn, which served as the inspiration for Keats's famous ode.  I first captured it as a jpeg and then exported it as an SVG. To compensate for SVG's inability to render the rich tonal values of photography, I've heavily embossed its "leaf-fringed legends," "Attic shapes," and "marbled men."


Next I plan to experiment more with SVG's text element and attributes, which could, I think, find application in humanities computing--specifically in text encoding. If my proposal is accepted, I'll be presenting some of these ideas at the Elective Affinities conference. (CJ and some of the other herders: this would be a great venue for you, too. The deadline for submissions was officially 1 Oct., but I wouldn't be surprised if they extended it; might be worth an inquiry. I would have advertised it here sooner, but didn't submit anything myself until the last minute).

And a plug for Matt's MLA 2002 paper, "Vector Futures," which looks primarily at Flash, but SVG gets a mention too (available as a pdf. Look under "selected writing" on his blog.) Highly recommended.

Posted by karik at October 3, 2004 9:31 PM | TrackBack
Comments
Post a comment









Remember personal info?