Scalable Vector Graphics (SVG)

From Wiki.OSArch

This page is unfinished. Feel free to help the project by sharing your knowledge about this subject.

1200px-SVG logo.svg.png

SVG is an image format developed by the World Wide Web Consortium (W3C) for vector graphics. SVG uses an XML format and is easy to generate on the fly and edit in many programs. Inkscape and Krita are leading examples of vector graphics editors using the SVG format, but many other programs can export to SVG.

Advantages and Disadvantages[edit]

Pros of SVG:

  • Supported everywhere!
  • Easy to read, easy to write, and a variety of data types to play with (paths, primitives, groups, defs...)
  • Classes (like layers, but more flexible, which is both good and bad) with styles at run-time
  • Can be turned interactive, with HTML, CSS, and Javascript (animation, hyperlinking, style combo changes, LOD zoom in/out, drag/drop - annoying tag obscuring your drawing? Just flick it away! Real-time updates from RSS or API - no more outdated drawings at site! Etc...)
  • Can add properties and metadata relating it back to model space. And not just classes, but serious metadata - could include IFC-XML inside SVG using their "metadata" element.

Cons of SVG:

  • CAD programs don't typically treat it as a CAD format. Modification is usually done in artsy programs like Inkscape which aren't designed for drafting.
  • Only one paper space. No absolute units. You can have embedded SVGs (which mean multiple SVGs), but everything has to be bound within a single document at the end of the day, there isn't a native concept of "pages".
  • 2D only. Unless you include IFC-XML.

Resources[edit]