[Qgis-developer] SVG symbols in QGIS with modifiable colors
Andreas Neumann
a.neumann at carto.net
Thu Jul 19 05:09:14 PDT 2012
Hi Otto,
Have you tried using presentation attributes only instead of the style
attribute that mixes everything?
It may be that QGIS only looks into the fill, stroke and stroke-width
attributes and not in the style attribute.
The way Inkscape exports SVG is a bit of a mess. It also exports way
too many style attributes (where there are defaults that you could omit)
with unnecessary repeats (over and over again). A manual SVG code would
easily be 1/4 of the size that Inkscape generates. But there is an
option to output an "optimized" or "optimiertes" SVG file where you can
choose to use "Stil nach XML" (Style to XML).
Hope this helps,
Andreas
On Thu, 19 Jul 2012 09:52:30 +0200, Otto Dassau wrote:
> Hi,
>
> I tried to follow the howtos in the web about defining colors for svg
> with
> param(fill), param(outline) and param(stroke-width).
>
> <svg width="100%" height="100%">
> <rect fill="param(fill) #ff0000" stroke="param(outline) #00ff00"
> stroke-width="param(stroke-width) 10" width="100" height="100">
> </rect>
> </svg>
>
> I used a copy from the svg /usr/share/qgis/svg/gpsicons/tree.svg. It
> looks a
> little different:
>
> [...]
>
>
> style="font-size:12px;stroke:#000000;stroke-width:3;fill:#a7a5a5;fill-opacity:
>
>
> 1;stroke-miterlimit:4;stroke-dasharray:none;stroke-linejoin:miter;stroke-linecap:butt"
> d="M 56.010357,6.2503568 L 30.572857,43.031607 L
> 37.729107,43.031607 L
> 23.666607,63.344107 L 33.072857,63.344107 L 18.291607,84.719107
> L
> 46.510357,84.719107 L 46.510357,99.812857 L 65.541607,99.812857
> L
> 65.541607,84.687857 L
> [...]
>
> All I managed to change is the fill value with the syntax below, but
> it
> doesn't work for stroke and stroke width.
>
> [...]
>
>
> style="font-size:12px;stroke:param(outline);stroke-width:param(stroke-width);
>
>
> fill:param(fill);fill-opacity:1;stroke-miterlimit:4;stroke-dasharray:none;
> stroke-linejoin:miter;stroke-linecap:butt"
> d="M 56.010357,6.2503568 L 30.572857,43.031607 L
> 37.729107,43.031607 L
> 23.666607,63.344107 L 33.072857,63.344107 L 18.291607,84.719107
> L
> 46.510357,84.719107 L 46.510357,99.812857 L 65.541607,99.812857
> L
> 65.541607,84.687857
> [...]
>
> Has the syntax changed? Or how does it work with more complex svgs. I
> also
> created a svg with inkscape, it shows the same syntax as tree.svg.
>
> Thanks a lot
> Otto
>
>
>
> _______________________________________________
> Qgis-developer mailing list
> Qgis-developer at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/qgis-developer
--
--
Andreas Neumann
Böschacherstrasse 10A
8624 Grüt (Gossau ZH)
Switzerland
More information about the Qgis-developer
mailing list