首页 > 解决方案 > 如何更改 xml 文件(在 geoserver 中)中 svg 图像的颜色?是否可以在 geoserver 中更改?

问题描述

这是我的代码。我想在这里更改 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>

标签: xmlsvggeoserver

解决方案


你可以试试这个:-

<?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>

如果您遇到任何问题,请告诉我


推荐阅读