[mapserver-dev] libsvg-cairo / librsvg [vote]

thomas bonfort thomas.bonfort at gmail.com
Wed Jul 24 10:08:59 PDT 2013


Devs,

While implementing svg symbology support, we made the choice to go
with libsvg+libsvg-cairo for parsing and rendering of svg files, as
those were the libraries that had the least dependencies. It turns out
both those libraries are more or less abandonware, resulting in their
absence from a number of distros, and an incompatibility with newer
cairo apis.

Along with release 6.4, I propose to add an SVG symbol implementation
based on librsvg [ https://wiki.gnome.org/LibRsvg ], with the
following consequences:

- the user can decide at compile time wether to use libsvgcairo or librsvg
- librsvg is maintained and present in distros, being a core component of gnome
- librsvg has a number of dependencies, making its compilation/usage
on non-standard platforms possibly problematic (c.f. previous point:
but it is distributed by distros).
- librsvg is GPL, with all that that might imply for people releasing
mapserver binaries.

This seems like the only way out if we want to continue supporting SVG
symbols in the longer run. I understand the limitations, however the
user still has the option to fall back to the current situation with
libsvg-cairo.

Jeff: concerning windows, all I can say is that librsvg support on
windows can't be worse than that of libsvg-cairo.

I'm not sure this really warrants a vote, but here goes in case anyone
wants to veto.

+1 for adding librsvg as an alternative to libsvg-cairo for rendering
svg symbols.

best regards,
thomas


More information about the mapserver-dev mailing list