SVG links

From EduTech Wiki
Jump to: navigation, search

1 Definition

This is a links page about SVG. According to Wikipedia,

SVG images can be produced by the use of a vector graphics editor, such as Inkscape, Adobe Illustrator, or CorelDRAW, and rendered to common raster image formats such as PNG using the same software.

Software can be programmed to render SVG images by using a library such as librsvg or Batik. SVG images can also be rendered to any desired popular image format by using the free software command-line utility ImageMagick.

Web browsers which can display SVG images on web pages include Firefox, Internet Explorer (IE 9+), Opera, Safari and Google Chrome.

SVG on the desktop has also become common. The GNOME project has supported and extensively used SVG icons since 2000.

Other uses for SVG include embedding for use in word processing (e.g. with LibreOffice) and desktop publishing (e.g. Scribus), plotting graphs (e.g. gnuplot), and importing paths (e.g. for use in GIMP or Blender).

(retrieved 18:45, 28 March 2012 (CEST))

This page should help people finding tools, texts (introductions, tutorials, manuals, ...) and other resources. Read the SVG article for a short technical overview.

Updated: Checked all (well most) links on 18:45, 28 March 2012 (CEST) - Daniel K. Schneider

2 Tools

2.1 Indexes for SVG tools

2.2 Editors and drawing tools with SVG support

Text (programming) editors with SVG support
Free drawing programs with native SVG
  • Inkscape. Inkscape is a free (GPL) open source SVG editor with capabilities similar to Illustrator, CorelDraw, Visio, etc. Supported SVG features include basic shapes, paths, text, alpha blending, transforms, gradients, node editing, svg-to-png export, grouping, and more. Available for Win, Linux, source. Recommended, but the tool requires learning and SVG code is not optimised for the web.
Free online drawing programs with native SVG
  • SVG Edit is an online vector graphics editor that uses only JS, HTML5, CSS and SVG (i.e. no server-side functionality). You can use this online web 2.0 tool without installing anything on your computer, then "save as" in your navigator. Recommended: This tool is the best thing for learning SVG and for creating shapes that you later want to hand edit for animation and scripting
  • an other online SVG editor.
  • Imagebot by Flamingtext is a simple to use SVG editor. No source code editing but you can import SVG and save-as svg.
  • Pilat drawing tool (online)
Free drawing programs that can import/export SVG
  • Skencil, a free Linux/Unix vector drawing program can export/import SVG. (formely "Sketch", not tested). Imports/exports SVG.
  • OpenOffice and Libre Office (a fork of OpenOffice) can import/export SVG.
  • DIA, a popular open source diagramming tool can import/export SVG (Win/Mac/Linux). There are also portable app (Windows) and zip versions (good for teachers who live in a restrictive environment...). Recommended.
Commercial drawing programs with native SVG
  • Sketsa SVG Graphics Editor by Kiyut, $89 Payware, Java 1.7+ based, demo and Java Webstart version available.
    • As of Jan 2014, this is probably the best pure SVG 1.0 tool, i.e. it is best suited for creating web graphics and adding animation and interactivity. In terms of pure drawing operations, it can do less than Inkscape, but it is much easier to use and also produces pure SVG, i.e. web ready.
    • There is no animation and interactivity support (as in Flash CS6), but both the built-in text and DOM editors allow to add SMIL animation code without problems.
    • Versions 6.6 (jan 2012) and 7.1x (jan 2014) tested with Ubuntu 10.4 and Win7. Claims to support SVG 1.1 full profile. You can edit code with a structure editor, e.g. for doing SMIL animations.
    • Hairy models from import rather well.
Commercial drawing programs with SVG import/export

These programs can usually both import/export SVG. However, you may loose information in both cases.

  • Adobe Illustrator can import/export SVG
  • SVG Kit for Adobe Creative Suite is a plug-in, which adds full-functional SVG and SVGZ file support to Adobe Creative Suite (Photoshop, PS Elements and InDesign).
  • Corel Draw can import/export SVG (not tested recently)
  • Microsoft Viso can import/export SVG (look at DIA above if you want a free solution)
  • SiteSpinner. (formerly WebDwarf). Drag-and-Drop Visual authoring and animation for HTML, DHTML, and SVG. ($50) - 18:45, 28 March 2012 (CEST)
  • Scribus, an open source document processing tool that can (only) import SVG

2.3 SVG support in web browsers

As of Jan 2014 all modern browsers do provide basic SVG support. None is fully complete, i.e. CanIUse (Jan 2014) computes overall compliance of 80 to 90 % for each major browser, except IE.

IE 11, Opera mini and IE Mobile still do not support SMIL-type animation.

Can I use provides more details.

See also Comparison of layout engines (SVG) (Wikipedia). There is also an interesting SVG test suite by test by Marek Raida.

2.4 Other viewing software

Plugins for web browsers

Since 2010, SVG plugins are no longer needed !. Information below is kept for historical reasons.

  • The Adobe SVG Viewer, worked with with IE and Firefox. Adobe discontinued support after they finally managed to acquire Macromedia (and Flash). The quality of this plugin was impressive. It implemented all of SVG 1.0. After Adobe dropped the project, getting it to work with IE 7 and Firefox 3 (or 4?) was quite a nightmare.....
Special purpose web browsers
  • The X-smiles XML-browser was a research browser made to explore various new web formats) supported SVG (uses CSIRO SVG viewer), also SMIL, XForms, X3D, etc. (2008)
  • Batik is mainly a toolkit for server-side applications, but it also includes a good stand-alone SVG browser called Squiggle that fully implements static SVG and scripting (but you may as well use Firefox or Opera for this). We use this toolkit for this wiki in order to render SVG graphics as PNG, but you also may use it as a helper application for your web browser.

2.5 SVG emulators

  • SVGWeb. A google project that translates SVG to Flash. SVG Web is a JavaScript library which provides SVG support on many browsers, including Internet Explorer, Firefox, and Safari. Using the library plus native SVG support you can instantly target ~95% of the existing installed web base.

2.6 Convertors

  • Most vector graphic software can import/export in several formats (see above). E.g. to import SVG in Flash one can open the SVG in Illustrator and then select all/copy/paste to CS3/4/5
  • SVG Import Filter for OpenOffice 2 (tested with OO 3.1 / Ubuntu: Import worked, but I did not test much - Daniel K. Schneider 13:51, 12 May 2010 (UTC)). An imported image then can be exported in other formats, e.g. WMF.
  • SVG to PNG converter (old Firefox 3 extension)
  • Vector Magic. Popular online tool for converting Bitmap Images To Clean Vector Art (not tested - Daniel K. Schneider 18:45, 28 March 2012 (CEST)).
  • SVG Maker Commercial multi-format to SVG translator (not tested - Daniel K. Schneider 18:45, 28 March 2012 (CEST) !)

2.7 Validation and cleanup tools

2.8 Online editors

  • SVG-edit, an online editor implemented in JavaScript. Strongly recommended

2.9 Toolkits for programmers

(needs updating - Daniel K. Schneider 18:45, 28 March 2012 (CEST) !)

  • CariSVG (zoom, animation, drag and drop, etc.)
  • Batik SVG Toolkit. It is mostly used for server-side applications. E.g. this Wiki uses Batik to translate SVG into PNG. There is also a stand-alone batik viewer.
  • phpHtmLLib. A set of PHP classes and library functions to help facilitate building, debugging, and rendering of XML, HTML, XHTML, WAP/WML Documents, and SVG, and complex widgets. Stable and popular - Version 3.02 (March 2008). Supports basic SVG functionality an image and a graph classe. E.g. see this SVG Graph
  • SVG-TT-Graph , a popular Perl module for line graphs, bars and pies [1/2004, not tested]
  • More PHP kits can be found on the web, see also our php example directory (some code is disabled for security reasons).
  • Pergola JavaScript SVG Library

3 Standards

  • The official SVG specification at W3C. (Scalable Vector Graphics (SVG) 1.1 (Second Edition), W3C Recommendation 16 August 2011)
  • Spécification SVG 1.0 (français)
  • Mobile SVG Profiles: SVG Tiny and SVG Basic W3C Recommendation 14 January 2003, edited in place 15 June 2009 (SVG on the road !)
  • W3C Validator. This popular online validation tool can validate SVG up to a certain extent. It will mostly just check syntax, i.e. it cannot detect bad attribute values.
  • SMIL animation SVG has incorporated SMIL-type animations (a superset). This means that SMIL tutorials will also be useful to you.
  • ECMAScript Language Binding for SVG (just SVG specific stuff, SVGElement has all the properties and methods of dom::Element !)
  • sXBL (W3C Working Draft 15 August 2005). SVG's XML Binding Language (sXBL) is proposed as a mechanism for defining the presentation and interactive behavior of elements described in a namespace other than SVG's. (This will allow definition of high-level tagsets). [9/2004]

4 Manuals and Textbooks

4.1 Free Online Textbooks

  • SVG Essentials The free wiki version of O'Reilly's SVG Essentials book by J. David Eisenberg (2002)
  • Javascript DOM and SVG database (from Pilat). This a searchable and browsable database of JavaScript tricks including SVG DOM . Also includes examples.
  • Learn SVG from the authors of the same print book.
    • The tutorials include an interface lists attributes for tags and then provides both examples and code. Recommended.
    • Start from Basics.
    • For DOM Scripting, see Scripting tutorial
    • You also can downlaod chapters of the original book. However, some examples probably will need fixing.

4.2 Online references

(easier than looking at standards)

  • SVG reference at W3Schools. As of March 2012, probably too concise to be useful to beginners.

4.3 Books

  • HTML5 Graphics with SVG & CSS3, Drawing with Markup. By Kurt Cagle. Publisher: O'Reilly Media. Released: May 2012 (est.)
    • Kurt Cagle is an SVG expert. The book should be good (when it comes out ...)
  • SVG Essentials. By J. Eisenberg. Publisher: O'Reilly Media. Released: February 2002. Pages: 358
    • This book is still a good buy. It remains my favorite SVG book. However, SVG is now big in HTML5. Therefore O'Reilly should publish a new version that includes HTML5 specifics and more DOM scripting. Also, Eisenberg, like many other SVG authors back then didn't test SVG within a native browser and missed the fact that namespaces must be declared. Add the following line within the first SVG tag of examples that break with a "prefix not bound to a namespace" message:
  • Building Web Applications with SVG, by David Dailey, Jon Frost and Domencio Strazzullo, Publisher: Microsoft Press. Also available as e-book at O'Reilly. There is a sampler.

5 Example sites

Once you have some basic understanding of SVG after reading a tutorial or two, you probably will learn best by example.

5.1 General

  • SVG elves are sharing articles, code snippets, and events
  • SVG animation with JavaScript and SMIL by David Dailey & al. (last checked 2013, and a this time (still) one of the best examples sites). D. Dailey is the author of the "Building Web Applications with SVG book.
  • LearnSVG. Good sample extracts from the Learn SVG: The Web Graphics Standard" by Jon Frost, Stefan Goessner and Michel Hirtzler book. Revisited by Robert DiBlasi and Tobias Reif. (Some examples max lack namespace definitions and will not run unless you fix these - but that may have been fixed by now - 18:45, 28 March 2012 (CEST)).
  • Marek Raida's SVG blog. Includes some good recent examples and also some kind of benchmarking suites. (last checked Mars 2011).
  • SVG - Learning By Coding Site with many very nice examples including advanced topics (in German), easy browsing and looking at code.
  • Pilat Several kinds of examples in french (e.g. SVG/Javascript, complex applications. There is an English version. This website has quite a lot of information.
  • Grapher. A simple (math.) graph drawing program made with JS and SVG. (Read the help !)
HTML 5 demos that may include SVG

5.2 SVG Clipart

5.3 Code fragments

6 Tutorials

6.1 General overviews

6.2 Basic Tutorials

Updated, i.e. example code should work in modern web browsers
Older materials

Code may be broken, but these texts may still be useful

6.3 SVG with JavaScript and DOM

6.4 SMIL Animation

(as of fall 2011 supported in all modern browsers)

  • Animate Your HTML5. A tour of HTML5 animation techniques with CSS3, SVG, Canvas and WebGL, by Martin Gorner - Google developer relations, last checked on Jan 2014.
  • Digging Animation, by Antoine Quint,, 2002 (SMIL animation, most examples seem to be broken as of 18:45, 28 March 2012 (CEST)).

6.5 Server-side SVG

6.6 SVG and XSLT

6.7 Various articles (not classified)

7 General SVG resource pages

  • The Ultimate Guide to SVG, 2015
  • User Documentation at Inkscape. Mostly documentation for Inkscape, but also includes some links to general SVG tutorials, e.g. the SVG Animation in its own wiki.
  • SVG - Learning By Coding Site with many very nice examples including advanced topics (in German), easy browsing and looking at code. Many examples need a state-of-the-art browser (e.g. Chrome 10) or else the old Adobe plugin. Bester Site auf Deutsch.
  • Pilat Informative Educative [francais]. SVG - PHP - MySQL - Javascript. Le meilleur site français. Also includes an English variant with (less?) contents.
  • Good dashboard page page by Ruud Steltenpool. Many good links.
  • SVG Page at DMOZ (for nostalgic people, when links pages were made by humans)
  • carto:paperssvg (A.M. Winter & A. Neumann). VERY good SVG resources, examples, etc. Swiss made :) .... but less active since 2007 :(
  • W3C Scalable Verctor Graphics (SVG). This is the W3C SVG overview page (includes News and Pointers)
  • Sacré SVG, a column (not updated since 2005).
  • SVG Open conference series. Usually, papers are open content.
  • dev.opera includes several good svg articles (including some good live examples, but you will have to search ...)
  • SVG magazine. The quarterly publication covering technique, coding, art, reviews and more. So far, there are 2 issues - 18:45, 28 March 2012 (CEST).
  • IBM Developer Works (search for "SVG" gives 709 results - 18:45, 28 March 2012 (CEST)).

8 Communities