[mapserver-dev] SVG symbol support-MapServer
Steve Lime
Steve.Lime at dnr.state.mn.us
Tue Jul 7 14:25:37 EDT 2009
Will be there... What about rolling our own using AGG? There apparently is a relatively basic implementation
of a SVG viewer in AGG out there. Depends on how much of the SVG spec would have to be supported to
create symbols I guess.
Steve
>>> On 7/7/2009 at 1:15 PM, in message <4A5390C7.7010206 at mapgears.com>, Daniel
Morissette <dmorissette at mapgears.com> wrote:
> I'd like to invite all interested parties (and hopefully at least the
> devs involved in the rendering parts of MapServer) to discuss this on
> the #mapserver IRC channel tomorrow (Wednesday) at 9:30am EDT:
>
> http://timeanddate.com/worldclock/fixedtime.html?month=7&day=8&year=2009&hour=9&
> min=30&sec=0&p1=165
>
> It seems to me that something based on libsvg-cairo is our best option
> so far... if it works. We would use libsvg-cairo to read and render the
> SVG symbols to a pixmap in memory using cairo and then the in-memory
> pixmap symbols would be pasted on top of the map as they are now. I have
> asked Kiran to make a test: write code to read and render a SVG symbol
> to a PNG output using libsvg-cairo and cairo to see what would be
> involved with that alternative. He should have some answers for us for
> the IRC meeting tomorrow.
>
> Another (possibly more robust) alternative would be librsvg, it is
> apparently the de-facto SVG reading liib of the Cairo project
> (http://wiki.svg.org/Librsvg) but it seems to have lots of dependencies,
> at least that's what this Mapnik ticket seems to indicate:
> http://trac.mapnik.org/ticket/320#comment:20
>
> Unfortunately both libs seem to have kind of stalled in 2005:
>
> - the latest version of libsvg-cairo dates from 2005
> http://cairographics.org/snapshots/libsvg-cairo-0.1.6.tar.gz
>
> - the librsvg website (http://librsvg.sourceforge.net/) has not been
> updated since 2005 and I could not find any sign of activity around the
> project other than new releases of librsvg on the gnome FTP site
> (http://ftp.gnome.org/pub/GNOME/sources/librsvg/2.26/)
>
> Daniel
>
> kiran varma wrote:
>> Hi all,
>>
>> Here is a small summary of some of the options i have evaluated for my
>> project,* SVG support for MapServer ,i request comments and suggestions
>> on this topic!
>>
>> Well,I have evaluated various options to handle SVG symbols some of them
>> are as follows..
>>
>> --1. One thing is use a higher level SVG parser, that transforms the
>> input SVG into
>> MapServer primitives. we should have to extend
>> MapServer's rendering API to support more than lines, polygons and
>> ellipses as it is now. (cubic, quadratic beziers, gradients,postgis curves
>> probably some more distorted figures).Implement a SVG subset that maps
>> to the existing MapServer rendering API..This feature not only solves
>> the present issue but also opens up support for some more!.Do a simple
>> additions to both Rendering API and also SVG parser
>>
>> *libsvg-cairo will help us to explore without adding in too many
>> dependencies.
>>
>> --2. One approach might be to augment cairo to produce SVG output and then
>> use cairo directly. I've been hoping to sit down and make an SVG
>> backend for cairo at some point.But, there's still a need for a more
>> complete SVG rendering library
>> that can target cairo. If we need to pick up libsvg development
>> and run with it, that would be great.
>>
>>
>> --3. This was a suggestion from a Developer >> use an out-of-the-box svg
>> to pixmap rasterizer, and create scaled
>> and rotated pixmaps at a higher level before passing them over to
>> mapserver's low level renderers. We would have to leverage a pixmap
>> cache to do this, so as not to repeat the SVG parsing and rasterizing
>> steps. A pixmap would be put in cache for each (scale,rotation)
>> couple, or maybe only for each scale and rotate the created pixmap.
>>
>>
>>
>> *I plan for option 1 as a good approach ,though it is a huge
>> process!!The last one was suggested by the Dev as a much easier approach
>> to complete the project .what do u say?
>>
>> Any problems or errors in the approach please comment i will make sure
>> everything goes right on time.:)
>>
>> thanks for your support
>> Kiran
>>
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> mapserver-dev mailing list
>> mapserver-dev at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/mapserver-dev
>
More information about the mapserver-dev
mailing list