FAQ: svg and wpf/xaml
I just wrote up a short answer to the question of does WPF render SVG. To make it easy for me to find in the future, evolve based on feedback, and for others to benefit from it, I post it here:
Q: Does WPF/XAML support rendering SVG content?
No, WPF doesn’t natively render SVG content.
However, the WPF flavor of vector graphics, does have many similarities with SVG…making conversion tools fairly simple to write.
Q: Why isn’t WPF just implementing SVG, etc…
This has been a much debated topic online ever since PDC 2003 (when we first widely showed "Avalon" off)
The summary goes something like this:
Windows Presentation Foundation (WPF), one of the key pillars of .Net Framework 3.0, is an integrated platform: UI (Controls), Media (2D, 3D, Animations, Video, Audio), and Documents (fixed documents with XPS, and flow documents as the http://nytimes.com/timesreader uses). As such, we needed to build a cohesive set of APIs that included a declarative representation (via XAML) that enabled many scenarios that involve several of those technologies.
We had a choice of stitching together many domain-specific technologies (svg, xhtml, smil, css, direct3d, etc…) or building the next Windows API as a great, consistent set of APIs across the breadth of UI, Media and Documents.
We believe that we have built an impressive platform for Windows developers.
Here are a few links that provide interesting reading and debate (not everything there is technically accurate, but most are worth reading)
- Ian Griffiths – http://www.oreillynet.com/cs/user/view/cs_msg/34066
- Joe Beda – http://www.eightypercent.net/Archive/2003/11/04.html#a153
- Wesner Moise – http://wesnerm.blogs.com/net_undocumented/2003/10/xaml_and_standa.html
- SVG Forum discussion: http://tech.groups.yahoo.com/group/svg-developers/message/56732
- SVG Forum discussion: http://tech.groups.yahoo.com/group/svg-developers/message/56860
- SVG Wiki: http://wiki.svg.org/Vector_Format_Comparisons
- Comment’s on Joe Beda’s blog: http://www.haloscan.com/comments.php?user=jbeda&comment=150#62415