Chapter 6. SVG: The Scalable Vector Graphics Format

SVG is a file format for storing vector graphics, particularly graphics designed for use on the Web. SVG’s strength is that it was developed as an open standards—based grammar for graphics that plays nicely with all of the other standard formats in the World Wide Web Consortium (W3C) family. An SVG document is written in XML, which means that its components can be easily integrated into larger documents with other types of XML.

The Document Object Model (DOM) provides a convenient interface for manipulating the structure of SVG documents, and stylesheets can be used to create a concise, consistent look and feel. Because SVG is XML, the XSLT language can be used to transform data stored in other XML formats into SVG documents. You can take advantage of the growing library of XML software tools to write SVG files. (See Chapter 1 for a summary of modules.)

SVG’s drawbacks are the same as XML’s. The code for representing simple documents can be overly verbose (although you can compress SVG files with gzip). Also, the computation involved in parsing and rendering an XML tree can require a lot of resources; it has taken some time for SVG viewers to catch up to the speed of SWF-based user agents. These drawbacks are more than made up for by the advantages offered by an XML-based design. The most compelling feature of SVG is the tight integration of the representation of images with the representation of other document elements within a ...

Get Perl Graphics Programming now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.