как изменить цвет изображения svg в файле xml (в геосервере)? можно ли изменить в геосервере? - PullRequest
0 голосов
/ 10 июля 2020

это мой код. Я хочу изменить цвет изображения svg здесь. хотя я меняю цветовой код, он не работает. я получаю черно-белый цвет. в чем ошибка в моем коде?

<se:PointSymbolizer>
<se:Graphic>
<!--Parametric SVG-->
<se:ExternalGraphic>
<se:OnlineResource xlink:href="ForServer/DRY.svg?fill=%23e01987&amp;fill-opacity=1&amp;outline=%23e01987&amp;outline-opacity=1&amp;outline-width=0" xlink:type="simple"/>
<se:Format>image/svg+xml</se:Format>
</se:ExternalGraphic>
<!--Plain SVG fallback, no parameters-->
<se:ExternalGraphic>
<se:OnlineResource xlink:href="ForServer/DRY.svg" xlink:type="simple"/>
<se:Format>image/svg+xml</se:Format>
</se:ExternalGraphic>
<!--Well known marker fallback-->
<se:Mark>
<se:WellKnownName>square</se:WellKnownName>
<se:Fill>
<se:SvgParameter name="fill">#e01987</se:SvgParameter>
</se:Fill>
<se:Stroke>
<se:SvgParameter name="stroke">#e01987</se:SvgParameter>
<se:SvgParameter name="stroke-width">0.5</se:SvgParameter>
</se:Stroke>
</se:Mark>
<se:Size>11</se:Size>
</se:Graphic>
</se:PointSymbolizer>

Ответы [ 3 ]

0 голосов
/ 30 июля 2020

GeoServer (AFAIK) не поддерживает раскраску символов SVG через файл SLD, это всегда будут цвета, установленные в SVG.

0 голосов
/ 31 июля 2020

Вместо того, чтобы давать изображение как .svg, я преобразовал SVG в png и дал изображение .png, он отлично работает !!!

0 голосов
/ 29 июля 2020

Вы можете попробовать это: -

<?xml version="1.0" encoding="ISO-8859-1"?>
<StyledLayerDescriptor
  version="1.0.0"
  xmlns="http://www.opengis.net/sld"
  xmlns:ogc="http://www.opengis.net/ogc"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:gml="http://www.opengis.net/gml"
  xsi:schemaLocation="http://www.opengis.net/sld
    http://schemas.opengis.net/sld/1.0.0/StyledLayerDescriptor.xsd
">
  <NamedLayer>
    <Name>redflag</Name>
        <UserStyle>
        <Name>burg</Name>
        <Title>A small red flag</Title>
        <Abstract>A sample of how to use an SVG based symbolizer
        </Abstract>
      <FeatureTypeStyle>
       <Rule>
          <PointSymbolizer>
              <Graphic>
                <ExternalGraphic>
                    <OnlineResource xlink:type="simple" xlink:href="burg02.svg" />
                    <Format>image/svg+xml</Format>
                </ExternalGraphic>
                <Size>
                 <ogc:Literal>30</ogc:Literal>
                </Size>
            </Graphic>
         </PointSymbolizer>
        <PolygonSymbolizer>
          <Fill>
            <CssParameter name="fill">#1eff00</CssParameter> <CssParameter name="fill-opacity">0.6</CssParameter>
          </Fill>
          <Stroke>
            <CssParameter name="stroke">#000000</CssParameter> <CssParameter name="stroke-width">0.5</CssParameter>
          </Stroke>
        </PolygonSymbolizer>
      </Rule>
     </FeatureTypeStyle>
    </UserStyle>
    </NamedLayer>
</StyledLayerDescriptor>

И дайте мне знать, если у вас возникнут какие-либо проблемы

...