<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Hi Andrea,<br>
    <br>
    I have backported your works:<br>
    <a class="moz-txt-link-freetext" href="https://github.com/qgis/QGIS/pull/3448">https://github.com/qgis/QGIS/pull/3448</a><br>
    <br>
    It needs some tests and reviews.<br>
    <br>
    Regards,<br>
    René-Luc<br>
    <br>
    <div class="moz-cite-prefix">Le 01/09/2016 à 21:41, Andrea Aime a
      écrit :<br>
    </div>
    <blockquote
cite="mid:CA+nxMTv3jwR7km+t=S9jt5bWQYQto+_M-G6HV9Y6Dwe0HZZQHA@mail.gmail.com"
      type="cite">
      <div dir="ltr">Hi Anita,
        <div>sorry for the late reply, busy times, and I knew the
          response would be long.</div>
        <div><br>
        </div>
        <div>The update is ... complicated :-)</div>
        <div>So, around the sprint a few issues were fixed and have code
          merged in master (QGis 3.x):</div>
        <div>
          <ul>
            <li>Export of ogc:Filter in places where an expression is
              required, used to happen for any non zero rotation and any
              non fully opaque alpha, making the SLD invalid/unreadable.
              Pull request here, merged on master: <a
                moz-do-not-send="true"
                href="https://github.com/qgis/QGIS/pull/3366">https://github.com/qgis/QGIS/pull/3366</a></li>
            <li>The styling works by default in "on screen mm", but SLD
              does not have such notion (has on screen pixel, on ground
              meter, on ground feet), and QGis did not rescale the
              values, making for very thin lines and tiny symbols. Fixed
              in this pull request, merged on master: <a
                moz-do-not-send="true"
                href="https://github.com/qgis/QGIS/pull/3414">https://github.com/qgis/QGIS/pull/3414</a></li>
            <li>Scale based visibility declared at the layer level was
              not exported in SLD, making for layers that would show up
              at all zoom levels. Pull request here, merged as well: <a
                moz-do-not-send="true"
                href="https://github.com/qgis/QGIS/pull/3436">https://github.com/qgis/QGIS/pull/3436</a></li>
            <li>GeoServer/GeoTools could not handle the way font based
              marks were exported. The syntax was actually valid, so I
              decided to build support for QGis own convention in
              GeoTools. This is the only bit already available in all
              supported GT/GS branches (develop, stable, maintenance): <a
                moz-do-not-send="true"
                href="https://osgeo-org.atlassian.net/browse/GEOT-5496">https://osgeo-org.atlassian.net/browse/GEOT-5496</a><br>
            </li>
            <li>QGis exports as "well known mark" names values that are
              not actually "well known", this one in being solved in
              GeoTools/GeoServer by adding support for the same names.
              Pull request pending, still haven't had the time to check
              it out: <a moz-do-not-send="true"
                href="https://github.com/geotools/geotools/pull/1288">https://github.com/geotools/geotools/pull/1288</a></li>
            <li>Labels are not exported at all as TextSymbolizer, during
              the spring Raymond Nijssen started working on that, he's
              got a promising work in progress, not yet turned into a
              pull request</li>
          </ul>
          <div>Kudos to the QGis developers that helped me with
            discussion, suggestions, and pull request reviews :-)</div>
          <div><br>
          </div>
          <div>Yet, there is still quite a lot of work to be done. Off
            the top of my head:</div>
        </div>
        <div>
          <ul>
            <li>Backporting some/all of the above to QGis 2.16 and maybe
              2.14</li>
            <li>QGis has a nice support for "parametric" SVG based on a
              draft SVG extension that never became "official",
              basically, it allows to have SVG with parameters for
              stroke color, width and opacity, fill color and opacity.
              GeoTools does not recognize such extension and always
              renders SVG symbols full black. I intend to add this
              support to GT/GS, see <a moz-do-not-send="true"
href="http://osgeo-org.1560.x6.nabble.com/Adding-support-for-parametric-SVGs-td5282722.html">http://osgeo-org.1560.x6.nabble.com/Adding-support-for-parametric-SVGs-td5282722.html</a>
              , and then enrich the QGis export to add said params in
              the SLD. Mind, right now the export QGis is doing is also
              invalid, it's adding tags trying to support the stroke
              related params that are not part of the SLD standard. I
              hope to be able to build this on the GeoTools side before
              September 18th, the feature freeze date for the next GT/GS
              release, but no promises.</li>
            <li>Alignment (top/bottom/left/right) is well supported in
              SLD, but the current QGis exported does not write the
              appropriate tags. Should not be too hard to fix, but there
              might be several places in the code to change.</li>
            <li>There is no support to export symbology where values are
              gathered from a property, or an expression based on
              properties. SLD supports this from day 0, but the SLD
              export code has no ability to support that. It would be
              nice to have basic support for property names, arithmetic,
              maybe some mapping between QGis own functions and GT/GS
              functions usable in SLD (full list here, can be easily
              extended: <a moz-do-not-send="true"
href="http://docs.geoserver.org/stable/en/user/filter/function_reference.html">http://docs.geoserver.org/stable/en/user/filter/function_reference.html</a>
              ). This would be a massive undertaking, I'm afraid it
              won't be feasible without funding, but we'll see (note,
              all the work I did so far was unfunded).<br>
            </li>
            <li>There is no support for exporting raster symbology,
              colormaps, contrast stretch and the like. GeoServer also
              does not understand SLD 1.1 raster symbology (it's quite
              different from the SLD 1.0 one), so work will have to be
              done on both sides. Seems another large undertaking.</li>
            <li>x/y translation/offset for lines and polygons is not
              implemented in GeoServer (only for points and labels
              instead), that would require some work, but not too much</li>
            <li>Compositing/blending is supported in GeoServer as a SLD
              extension, could be thus exported (cannot promise all
              single compositing/blending modes are a match on the two
              sides)</li>
            <li>Pseudo 3D buildings are supported as an extension in
              GeoServer SLD, so this kind of layer is probably
              exportable. Might need some work on the GeoServer side to
              render the same way as QGis though (as far as I know QGis
              is doing some sorting). Example style for GeoServer and
              map here: <a moz-do-not-send="true"
                href="https://github.com/charleyglynn/Extruded-buildings-SLD">https://github.com/charleyglynn/Extruded-buildings-SLD</a></li>
            <li>z-stacked symbols like "highway" roads (paint all roads
              orange thick, go back, paint all roads white thin) are
              supported on both sides, but the export does not support
              it, and some change in the overall export logic would be
              required to actually support it, as SLD requires multiple
              FeatureTypeStyle elements, one per z level, to be
              generated in order to get the same effect. Right one there
              is just one FTS with many rules and symbolizers in it.</li>
            <li>Geometry generators can probably be partially translated
              as "geometry transformations" in SLD, except in our case
              they do work in real world coordinates, not on screen: <a
                moz-do-not-send="true"
href="http://docs.geoserver.org/stable/en/user/styling/sld-extensions/geometry-transformations.html">http://docs.geoserver.org/stable/en/user/styling/sld-extensions/geometry-transformations.html</a></li>
            <li>Some types of symbology like shapeburst and inverted
              polygons are simply not available in SLD, nor in GeoServer
              own extensions, so one would have to first implement those
              in GeoServer, create appropriate SLD extensions, and then
              have QGis implement them in the output</li>
          </ul>
          <div>I'm probably forgetting something, and likely unaware of
            other QGis mapping capabilities I did not mention above :-)</div>
        </div>
        <div><br>
        </div>
        <div>In any case, my target for the sprint was to show that
          exporting _basic_ styling is feasible, and does not require
          months of work. To some extent that was achieved (especially
          when we get the text symbolizer support). Hopefully it will
          make more people interested, maybe some devs will pitch in,
          and some sponsoring organizations can fill in the blanks....
          an open source developer can dream, right? :-p</div>
        <div><br>
        </div>
        <div>Cheers</div>
        <div>Andrea</div>
        <div><br>
        </div>
      </div>
      <div class="gmail_extra"><br>
        <div class="gmail_quote">On Tue, Aug 30, 2016 at 8:42 PM, Anita
          Graser <span dir="ltr"><<a moz-do-not-send="true"
              href="mailto:anitagraser@gmx.at" target="_blank">anitagraser@gmx.at</a>></span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div dir="ltr">
              <div class="gmail_default" style="font-size:small">Hi
                everyone!</div>
              <div class="gmail_default" style="font-size:small"><br>
              </div>
              <div class="gmail_default" style="font-size:small">Hope
                you made it back home safe after Bonn. Could you give a
                short update on this topic, what was discussed / decided
                / worked on in Bonn?</div>
              <div class="gmail_default" style="font-size:small"><br>
              </div>
              <div class="gmail_default" style="font-size:small">Thank
                you and best wishes,</div>
              <div class="gmail_default" style="font-size:small">Anita </div>
              <div class="gmail_default" style="font-size:small"><br>
              </div>
              <div class="gmail_default" style="font-size:small"><br>
              </div>
              <div class="gmail_default" style="font-size:small"><br>
              </div>
              <div class="gmail_extra"><br>
                <div class="gmail_quote">
                  <div>
                    <div class="h5">On Sat, Jul 9, 2016 at 10:56 AM,
                      Andrea Aime <span dir="ltr"><<a
                          moz-do-not-send="true"
                          href="mailto:andrea.aime@geo-solutions.it"
                          target="_blank">andrea.aime@geo-solutions.it</a>></span>
                      wrote:<br>
                    </div>
                  </div>
                  <blockquote class="gmail_quote" style="margin:0 0 0
                    .8ex;border-left:1px #ccc solid;padding-left:1ex">
                    <div>
                      <div class="h5">
                        <div dir="ltr">
                          <div class="gmail_extra">
                            <div class="gmail_quote"><span>On Tue, Jun
                                28, 2016 at 7:42 PM, Andrea Aime <span
                                  dir="ltr"><<a
                                    moz-do-not-send="true"
                                    href="mailto:andrea.aime@geo-solutions.it"
                                    target="_blank">andrea.aime@geo-solutions.it</a>></span>
                                wrote:<br>
                                <blockquote class="gmail_quote"
                                  style="margin:0 0 0
                                  .8ex;border-left:1px #ccc
                                  solid;padding-left:1ex">
                                  <div dir="ltr">
                                    <div>I'll be at the code sprint
                                      after the conference, Saturday and
                                      Sunday.<br>
                                    </div>
                                  </div>
                                </blockquote>
                                <div><br>
                                </div>
                              </span>
                              <div>Change of plans, I'll be there the
                                Sunday before the conference, and due to
                                flight</div>
                              <div>arrangements, also most of Saturday
                                (in case anyone's interested we can find</div>
                              <div>a place to start hacking)</div>
                              <div><br>
                              </div>
                              <div>Cheers</div>
                              <span><font color="#888888">
                                  <div>Andrea</div>
                                  <div><br>
                                  </div>
                                </font></span></div>
                            <span>
                              <div><br>
                              </div>
                              -- <br>
                              <div data-smartmail="gmail_signature">
                                <div dir="ltr">
                                  <div>
                                    <div dir="ltr">
                                      <div dir="ltr">
                                        <div dir="ltr">
                                          <div dir="ltr">
                                            <div dir="ltr">
                                              <div dir="ltr">
                                                <div dir="ltr">
                                                  <div>
                                                    <div>
                                                      <div>==</div>
                                                      <div>GeoServer
                                                        Professional
                                                        Services from
                                                        the experts!
                                                        Visit</div>
                                                      <div><a
                                                          moz-do-not-send="true"
href="http://goo.gl/it488V" target="_blank">http://goo.gl/it488V</a> for
                                                        more
                                                        information.</div>
                                                      <div><span
                                                          style="font-size:12.8000001907349px">==</span><br>
                                                      </div>
                                                    </div>
                                                    <div><br>
                                                    </div>
                                                  </div>
                                                  <div>Ing. Andrea Aime <br>
                                                  </div>
                                                  <div>@geowolf</div>
                                                  <div>Technical Lead</div>
                                                  <div><br>
                                                  </div>
                                                  <div><span
                                                      style="font-size:12.8px">GeoSolutions
                                                      S.A.S.</span><br
                                                      style="font-size:12.8px">
                                                    <span
                                                      style="font-size:12.8px">Via
                                                      di Montramito 3/A</span><br
style="font-size:12.8px">
                                                    <span
                                                      style="font-size:12.8px">55054 
                                                      Massarosa (LU)</span></div>
                                                  <div><span
                                                      style="font-size:12.8px">phone:
                                                      <a
                                                        moz-do-not-send="true"
href="tel:%2B39%200584%20962313" value="+390584962313" target="_blank">+39
                                                        0584 962313</a></span><br>
                                                  </div>
                                                  <div>fax: <a
                                                      moz-do-not-send="true"
href="tel:%2B39%200584%201660272" value="+3905841660272" target="_blank">+39
                                                      0584 1660272</a></div>
                                                  <div>mob: <a
                                                      moz-do-not-send="true"
href="tel:%2B39%20%C2%A0339%208844549" value="+393398844549"
                                                      target="_blank">+39
                                                       339 8844549</a></div>
                                                  <div><br>
                                                  </div>
                                                  <div><a
                                                      moz-do-not-send="true"
href="http://www.geo-solutions.it" target="_blank">http://www.geo-solutions.it</a></div>
                                                  <div><a
                                                      moz-do-not-send="true"
href="http://twitter.com/geosolutions_it" target="_blank">http://twitter.com/geosolution<wbr>s_it</a></div>
                                                  <div><br>
                                                  </div>
                                                  <div>
                                                    <p><span lang="IT"><font
                                                          size="1"><b>AVVERTENZE
                                                          AI SENSI DEL
                                                          D.Lgs.
                                                          196/2003</b></font></span></p>
                                                    <p><span lang="IT"><font
                                                          size="1">Le
                                                          informazioni
                                                          contenute in
                                                          questo
                                                          messaggio di
                                                          posta
                                                          elettronica
                                                          e/o nel/i
                                                          file/s
                                                          allegato/i
                                                          sono da
                                                          considerarsi
                                                          strettamente
                                                          riservate. Il
                                                          loro utilizzo
                                                          è consentito
                                                          esclusivamente
                                                          al
                                                          destinatario
                                                          del messaggio,
                                                          per le
                                                          finalità
                                                          indicate nel
                                                          messaggio
                                                          stesso.
                                                          Qualora
                                                          riceviate
                                                          questo
                                                          messaggio
                                                          senza esserne
                                                          il
                                                          destinatario,
                                                          Vi preghiamo
                                                          cortesemente
                                                          di darcene
                                                          notizia via
                                                          e-mail e di
                                                          procedere alla
                                                          distruzione
                                                          del messaggio
                                                          stesso,
                                                          cancellandolo
                                                          dal Vostro
                                                          sistema.
                                                          Conservare il
                                                          messaggio
                                                          stesso,
                                                          divulgarlo
                                                          anche in
                                                          parte,
                                                          distribuirlo
                                                          ad altri
                                                          soggetti,
                                                          copiarlo, od
                                                          utilizzarlo
                                                          per finalità
                                                          diverse,
                                                          costituisce
                                                          comportamento
                                                          contrario ai
                                                          principi
                                                          dettati dal
                                                          D.Lgs.
                                                          196/2003.</font></span></p>
                                                    <p><span lang="IT"><font
                                                          size="1"> </font></span></p>
                                                    <p><font size="1">The
                                                        information in
                                                        this message
                                                        and/or
                                                        attachments, is
                                                        intended solely
                                                        for the
                                                        attention and
                                                        use of the named
                                                        addressee(s) and
                                                        may be
                                                        confidential or
                                                        proprietary in
                                                        nature or
                                                        covered by the
                                                        provisions of
                                                        privacy act
                                                        (Legislative
                                                        Decree June, 30
                                                        2003, no.196 -
                                                        Italy's New Data
                                                        Protection
                                                        Code).Any use
                                                        not in accord
                                                        with its
                                                        purpose, any
                                                        disclosure,
                                                        reproduction,
                                                        copying,
                                                        distribution, or
                                                        either
                                                        dissemination,
                                                        either whole or
                                                        partial, is
                                                        strictly
                                                        forbidden except
                                                        previous formal
                                                        approval of the
                                                        named
                                                        addressee(s). If
                                                        you are not the
                                                        intended
                                                        recipient,
                                                        please contact
                                                        immediately the
                                                        sender by
                                                        telephone, fax
                                                        or e-mail and
                                                        delete the
                                                        information in
                                                        this message
                                                        that has been
                                                        received in
                                                        error. The
                                                        sender does not
                                                        give any
                                                        warranty or
                                                        accept liability
                                                        as the content,
                                                        accuracy or
                                                        completeness of
                                                        sent messages
                                                        and accepts no
                                                        responsibility 
                                                        for changes made
                                                        after they were
                                                        sent or for
                                                        other risks
                                                        which arise as a
                                                        result of e-mail
                                                        transmission,
                                                        viruses, etc.</font></p>
                                                  </div>
                                                  <div><br>
                                                  </div>
                                                  <div>------------------------------<wbr>-------------------------</div>
                                                </div>
                                              </div>
                                            </div>
                                          </div>
                                        </div>
                                      </div>
                                    </div>
                                  </div>
                                </div>
                              </div>
                            </span></div>
                        </div>
                        <br>
                      </div>
                    </div>
                    <span class="">______________________________<wbr>_________________<br>
                      Qgis-developer mailing list<br>
                      <a moz-do-not-send="true"
                        href="mailto:Qgis-developer@lists.osgeo.org"
                        target="_blank">Qgis-developer@lists.osgeo.org</a><br>
                      List info: <a moz-do-not-send="true"
                        href="http://lists.osgeo.org/mailman/listinfo/qgis-developer"
                        rel="noreferrer" target="_blank">http://lists.osgeo.org/mailman<wbr>/listinfo/qgis-developer</a><br>
                      Unsubscribe: <a moz-do-not-send="true"
                        href="http://lists.osgeo.org/mailman/listinfo/qgis-developer"
                        rel="noreferrer" target="_blank">http://lists.osgeo.org/mailman<wbr>/listinfo/qgis-developer</a><br>
                    </span></blockquote>
                </div>
                <br>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
        <br clear="all">
        <div><br>
        </div>
        -- <br>
        <div class="gmail_signature" data-smartmail="gmail_signature">
          <div dir="ltr">
            <div>
              <div dir="ltr">
                <div dir="ltr">
                  <div dir="ltr">
                    <div dir="ltr">
                      <div dir="ltr">
                        <div dir="ltr">
                          <div dir="ltr">
                            <div>
                              <div>
                                <div>==</div>
                                <div>GeoServer Professional Services
                                  from the experts! Visit</div>
                                <div><a moz-do-not-send="true"
                                    href="http://goo.gl/it488V"
                                    target="_blank">http://goo.gl/it488V</a>
                                  for more information.</div>
                                <div><span
                                    style="font-size:12.8000001907349px">==</span><br>
                                </div>
                              </div>
                              <div><br>
                              </div>
                            </div>
                            <div>Ing. Andrea Aime <br>
                            </div>
                            <div>@geowolf</div>
                            <div>Technical Lead</div>
                            <div><br>
                            </div>
                            <div><span style="font-size:12.8px">GeoSolutions
                                S.A.S.</span><br
                                style="font-size:12.8px">
                              <span style="font-size:12.8px">Via di
                                Montramito 3/A</span><br
                                style="font-size:12.8px">
                              <span style="font-size:12.8px">55054 
                                Massarosa (LU)</span></div>
                            <div><span style="font-size:12.8px">phone:
                                +39 0584 962313</span><br>
                            </div>
                            <div>fax: +39 0584 1660272</div>
                            <div>mob: +39  339 8844549</div>
                            <div><br>
                            </div>
                            <div><a moz-do-not-send="true"
                                href="http://www.geo-solutions.it"
                                target="_blank">http://www.geo-solutions.it</a></div>
                            <div><a moz-do-not-send="true"
                                href="http://twitter.com/geosolutions_it"
                                target="_blank">http://twitter.com/geosolutions_it</a></div>
                            <div><br>
                            </div>
                            <div>
                              <p><span lang="IT"><font size="1"><b>AVVERTENZE
                                      AI SENSI DEL D.Lgs. 196/2003</b></font></span></p>
                              <p><span lang="IT"><font size="1">Le
                                    informazioni contenute in questo
                                    messaggio di posta elettronica e/o
                                    nel/i file/s allegato/i sono da
                                    considerarsi strettamente riservate.
                                    Il loro utilizzo è consentito
                                    esclusivamente al destinatario del
                                    messaggio, per le finalità indicate
                                    nel messaggio stesso. Qualora
                                    riceviate questo messaggio senza
                                    esserne il destinatario, Vi
                                    preghiamo cortesemente di darcene
                                    notizia via e-mail e di procedere
                                    alla distruzione del messaggio
                                    stesso, cancellandolo dal Vostro
                                    sistema. Conservare il messaggio
                                    stesso, divulgarlo anche in parte,
                                    distribuirlo ad altri soggetti,
                                    copiarlo, od utilizzarlo per
                                    finalità diverse, costituisce
                                    comportamento contrario ai principi
                                    dettati dal D.Lgs. 196/2003.</font></span></p>
                              <p><span lang="IT"><font size="1"> </font></span></p>
                              <p><font size="1">The information in this
                                  message and/or attachments, is
                                  intended solely for the attention and
                                  use of the named addressee(s) and may
                                  be confidential or proprietary in
                                  nature or covered by the provisions of
                                  privacy act (Legislative Decree June,
                                  30 2003, no.196 - Italy's New Data
                                  Protection Code).Any use not in accord
                                  with its purpose, any disclosure,
                                  reproduction, copying, distribution,
                                  or either dissemination, either whole
                                  or partial, is strictly forbidden
                                  except previous formal approval of the
                                  named addressee(s). If you are not the
                                  intended recipient, please contact
                                  immediately the sender by telephone,
                                  fax or e-mail and delete the
                                  information in this message that has
                                  been received in error. The sender
                                  does not give any warranty or accept
                                  liability as the content, accuracy or
                                  completeness of sent messages and
                                  accepts no responsibility  for changes
                                  made after they were sent or for other
                                  risks which arise as a result of
                                  e-mail transmission, viruses, etc.</font></p>
                            </div>
                            <div><br>
                            </div>
                            <div>-------------------------------------------------------</div>
                          </div>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Qgis-developer mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Qgis-developer@lists.osgeo.org">Qgis-developer@lists.osgeo.org</a>
List info: <a class="moz-txt-link-freetext" href="http://lists.osgeo.org/mailman/listinfo/qgis-developer">http://lists.osgeo.org/mailman/listinfo/qgis-developer</a>
Unsubscribe: <a class="moz-txt-link-freetext" href="http://lists.osgeo.org/mailman/listinfo/qgis-developer">http://lists.osgeo.org/mailman/listinfo/qgis-developer</a></pre>
    </blockquote>
    <br>
  </body>
</html>