This is an interesting little experiment I did when I was searching for a FreeBSD SVG logo to put on a poster. As you might know, SVG format is for vector images, allowing for infinite scaling without pixelation, which is exactly what you need, if you are going to print something on a big quality poster. Either that or you need originals in huge sizes for downscaling.
What caught my eye when I opened the image with Firefox was the lack of detail inside the devil ball which should be visible. This sent me on a little crusade to find out which browsers and image programs are actually capable of rendering it correctly.
For (assumingly) correct reference render we will take the logo from the freebsd.org:
Now let’s jump right into it..
Firefox render is very basic, lacks most of the highlights and internal details.
Chrome takes some artistic freedoms and completely screws up in the process. The elements are there but layered improperly plus the horns are now black. Obvious transparency and overlay issues.
Internet Explorer manages to produce the worst render of all programs.
Opera follows Chrome since they use the same underlying engine.
Safari also falls into the Webkit family with Chrome and Opera.
Svg-edit is an online JavaScript based tool.
ImageMagick is very close but it has an extra bright ring going through the middle which apparently shouldn’t be there.
Inkscape is the only tool in this test that produced a proper render.
Gimp is also very close but has the same imperfection as ImageMagick.
IrfanView uses an external plugin to render SVGs that is not free. If we ignore the overlay text for a moment, the image suffers from Chrome-like problems except it’s of absolute terrible quality.
And there you have it, the piss poor state of SVG rendering as of July 2015.
SVG protip
If you want to resize an SVG image and produce a high resolution PNG, the easiest method is to use ImageMagick from command line:
convert -density 600 Freebsd_logo.svg Freebsd_logo.png
Density is specified in dpi by default. You determine the dpi based on the size of the print you actually want to produce.