[mapserver-users] SVG text

thomas bonfort thomas.bonfort at gmail.com
Tue Dec 31 06:40:32 PST 2013


Jefferson,
We cannot simply add <text> elements ourselves, as the cairo svg
renderer is a blackbox we can only access through the cairo api.
Given the patches proposed to cairo, I would indeed be inclined to
believe that the feature is rather trivial to implement, however I'm
pretty sure the cairo folks have some sound philosophical or technical
reasons for not including it as-is. You may also have a look at
https://bugs.freedesktop.org/show_bug.cgi?id=38516 which has a bit of
useful information.
Specifically for mapserver, it would be vastly more efficient in the
long and short term if this were to be added to cairo. If that was
never going to be the case, then a "specific rendering driver" would
need to be implemented to bypass cairo completely, the extent of the
effort for that is very dependent on the scope of the features that
would be supported (simple lines, polygons and text would be rather
trivial, but there's much more complexity when adding other symbols) -
basically, we would need to reimplement most of the cairo svg driver.

regards,
thomas

On 31 December 2013 15:22, Jefferson Williams
<jefferson.d.williams at gmail.com> wrote:
> When you say "a specific rendering driver"...  I am not a professional
> programmer and am not trying to speak above my level, but it seems to me
> that producing a text element in an SVG file is a fairly trivial task
> compared to rendering the text into vectors, which is what Cairo does now.
> The text doesn't need to be "rendered" at all, but simply inserted into a
> text element such as this example from w3.org:
>
> <text x="250" y="150" font-family="Verdana" font-size="55" fill="blue"
>>Hello, out there</text>
>
> Thoughts? I realize that this is a Cairo issue, not a Mapserver issue, since
> the SVG rendering was moved out of Mapserver; but would you agree that this
> would be a fairly simple task from a programming perspective?
>
>
> On Tue, Dec 31, 2013 at 7:14 AM, thomas bonfort <thomas.bonfort at gmail.com>
> wrote:
>>
>> Jefferson,
>> There is currently no way to produce those elements with mapserver,
>> and to my knowledge there are no plans to do so yet. A specific
>> rendering driver would need to be implemented to achieve this, but has
>> not yet been funded or proposed.
>>
>> regards,
>> thomas
>>
>> On 24 December 2013 17:42, Jefferson Williams
>> <jefferson.d.williams at gmail.com> wrote:
>> > I'm a long-time user of PHP Mapscript and have written code to produce
>> > maps
>> > for Wikipedia.  Older versions of Mapscript produced SVG files that
>> > contained text elements.  In more recent versions, text is produced as a
>> > series of vectors instead, which means that the text cannot be edited.
>> > Often auto-generated maps need to be tweaked in various ways before they
>> > are
>> > ready for the public. Now I can move text, but I cannot edit it.
>> >
>> > Is there a way with 6.2 or 6.4 that labels can be produced as text
>> > elements
>> > in the resulting SVG file?
>> >
>> > --
>> >
>> > Jeff Williams
>> >
>> > _______________________________________________
>> > mapserver-users mailing list
>> > mapserver-users at lists.osgeo.org
>> > http://lists.osgeo.org/mailman/listinfo/mapserver-users
>
>
>
>
> --
>
> Jeff Williams


More information about the mapserver-users mailing list