{"id":217,"date":"2008-11-21T23:55:00","date_gmt":"2008-11-21T23:55:00","guid":{"rendered":"http:\/\/localhost:8000\/?p=217"},"modified":"2008-11-21T23:55:00","modified_gmt":"2008-11-21T23:55:00","slug":"reports-of-svgs-death-exaggerated","status":"publish","type":"post","link":"https:\/\/blog.gwadej.org\/programmer-musings\/2008\/11\/reports-of-svgs-death-exaggerated\/","title":{"rendered":"Reports of SVG&#8217;s death exaggerated"},"content":{"rendered":"<p>A message appeared recently on the <acronym title=\"Scalable Vector Graphics\">SVG<\/acronym> Development mailing list that, once again, predicts the death of <acronym title=\"Scalable Vector Graphics\">SVG<\/acronym>. This meme comes up pretty regularly on the various mailing lists for SVG. Most of them are trolls, of course. But this one got me thinking again about what <acronym title=\"Scalable Vector Graphics\">SVG<\/acronym> is and what it is not.<\/p>\n<p>I thought it might be interesting to consider some of these claims and try, once again, to put them to rest. I&#8217;ll cover each claim in a separate entry over the next few posts. To do that, we need a little background material.<\/p>\n<h2 class=\"subhead\">What is <acronym title=\"Scalable Vector Graphics\">SVG<\/acronym><\/h2>\n<p>Let&#8217;s start off with the basics. <acronym title=\"Scalable Vector Graphics\">SVG<\/acronym> stands for <em>Scalable Vector Graphics<\/em>. It is an open <acronym title=\"eXtensible Markup Language\">XML<\/acronym>-based vector graphics format described by a <a href=\"http:\/\/www.w3.org\/\">World Wide Web Consortium<\/a> (<acronym title=\"World Wide Web Consortium\">W3C<\/acronym>) <a href=\"http:\/\/www.w3.org\/Graphics\/SVG\/\">recommendation<\/a>. Unlike the formats you may be more familiar with (<acronym title=\"Joint Photographic Experts Group\">JPEG<\/acronym>, <acronym title=\"Portable Network Graphics\">PNG<\/acronym>, <acronym title=\"Graphics Interchange Format\">GIF<\/acronym>, etc.), <acronym title=\"Scalable Vector Graphics\">SVG<\/acronym> is not a grid of colored pixels or raster format. <acronym title=\"Scalable Vector Graphics\">SVG<\/acronym> describes graphical objects through lines, curves, and manipulations of objects.<\/p>\n<p>This gives a number of advantages. The first is part of the name: scalable. When you scale a normal raster format larger, the image gets worse (jaggies). When you scale a raster format smaller, you lose information. This isn&#8217;t a bug, it is a property of all raster formats. Vector formats, on the other hand, are described by mathematical entities like lines and circles. You can scale them to any size without visual artifacts or loss of data.<\/p>\n<p><acronym title=\"Scalable Vector Graphics\">SVG<\/acronym> also supports three other features in addition to the scalability that is part of being a vector format. First, <acronym title=\"Scalable Vector Graphics\">SVG<\/acronym> supports declarative animation based on the <acronym title=\"Synchronized Multimedia Integration Language\">SMIL<\/acronym> <acronym title=\"World Wide Web Consortium\">W3C<\/acronym> recommendation. Secondly, <acronym title=\"Scalable Vector Graphics\">SVG<\/acronym> supports scripting through ECMAscript. These two features mean <acronym title=\"Scalable Vector Graphics\">SVG<\/acronym> can be used for dynamic images as well as static images. Finally, <acronym title=\"Scalable Vector Graphics\">SVG<\/acronym> supports declarative filter effects that can be used to create visually complex images.<\/p>\n<h2 class=\"subhead\">The Claims<\/h2>\n<p>In the next few posts in this <a target=\"_blank\" rel=\"noopener\" href=\"\/programmer_musings\/series_of_posts\/svg-lives\/\">series<\/a>, I&#8217;ll explore some of these claims.<\/p>\n<p>Finally, I&#8217;ll summarize the discussion at the end of the series.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A message appeared recently on the SVG Development mailing list that, once again, predicts the death of SVG. This meme comes up pretty regularly on the various mailing lists for SVG. Most of them are trolls, of course. But this one got me thinking again about what SVG is and what it is not. I\u2026 <span class=\"read-more\"><a href=\"https:\/\/blog.gwadej.org\/programmer-musings\/2008\/11\/reports-of-svgs-death-exaggerated\/\">Read More &raquo;<\/a><\/span><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[153,322],"_links":{"self":[{"href":"https:\/\/blog.gwadej.org\/programmer-musings\/wp-json\/wp\/v2\/posts\/217"}],"collection":[{"href":"https:\/\/blog.gwadej.org\/programmer-musings\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.gwadej.org\/programmer-musings\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.gwadej.org\/programmer-musings\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.gwadej.org\/programmer-musings\/wp-json\/wp\/v2\/comments?post=217"}],"version-history":[{"count":0,"href":"https:\/\/blog.gwadej.org\/programmer-musings\/wp-json\/wp\/v2\/posts\/217\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.gwadej.org\/programmer-musings\/wp-json\/wp\/v2\/media?parent=217"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.gwadej.org\/programmer-musings\/wp-json\/wp\/v2\/categories?post=217"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.gwadej.org\/programmer-musings\/wp-json\/wp\/v2\/tags?post=217"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}