Externer Grafikpfad des Geoserver SLD


8
<Rule>
    <PointSymbolizer>
     <Graphic>
       <ExternalGraphic>
         <OnlineResource
           xlink:type="simple"
           xlink:href="glass.png" />
         <Format>image/png</Format>
       </ExternalGraphic>
       <Size>28</Size>
     </Graphic>
   </PointSymbolizer>
</Rule>

Ich möchte externe Grafiken auf meinen Ebenen verwenden. Ich habe mit Geoserver Admin Panel gestylt. Externe Grafiken funktionieren jedoch nicht. Ich lege mein Bild in den Ordner / var / www / geoserver / data / styles .

Ich habe einige href-Optionen ausprobiert, aber nicht funktioniert.

  • xlink: href = "glass.png"
  • xlink: href = "file: ///glass.png"
  • xlink: href = "/ var / www / geoserver / glass.png"

Ich denke ein anderes Problem.


1
Ihr SLD sieht "burg.sld" sehr ähnlich, das in der Demo-Ebene "tiger: poi" verwendet wird. Es scheint zwei Möglichkeiten zu geben, Größe zu geben, aber Ihr Weg ist auch richtig. Versuchen Sie, Ihr PNG-Symbol anstelle von "burg02.svg" für tiger: poi zu verwenden, und überprüfen Sie anhand der Ebenenvorschau, ob es verwendet wird. Ändern Sie die WMS-Stile in den erweiterten Optionen der Ebenenvorschau in "Burg". Ist / var / www / geoserver / data Ihr Datenverzeichnis? Ihr letzter xlink mit vollständigem Pfad scheint einen Tippfehler zu haben - / data / fehlt im Pfad.
user30184

Antworten:


5

Überprüfen Sie, ob Sie die Stildefinition in einem Arbeitsbereich erstellt haben.

In dieser Situation müssen Sie das PNG-Bild im Verzeichnis $ GEOSERVER_DATA_DIR / wokspaces / {Name} / styles oder einem beliebigen Unterverzeichnis ablegen .

dh wenn Sie das Bild in das Verzeichnis hochladen:

$ GEOSERVER_DATA_DIR / workspaces / {yourWorkspace} /styles/images/earthquake.png

Dein sld muss so aussehen

        <Rule>
          <Title>Red flag</Title>
          <PointSymbolizer>
            <Graphic>
              <ExternalGraphic>
                <OnlineResource xlink:type="simple" xlink:href="images/earthquake.png" />
                <Format>image/png</Format>
              </ExternalGraphic>
              <Size>
                <ogc:Literal>20</ogc:Literal>
              </Size>
            </Graphic>
          </PointSymbolizer>
        </Rule>

4

Dies ist eine Modifikation von burg.sld, die mit dem Geoserver geliefert wird. Ich habe earthake.png im Stilverzeichnis von GEOSERVER_DATA_DIRECTORY bereitgestellt.

  <?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"
      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>
              <Title>Red flag</Title>
              <PointSymbolizer>
                <Graphic>
                  <ExternalGraphic>
                    <OnlineResource xlink:type="simple" xlink:href="earthquake.png" />
                    <Format>image/png</Format>
                  </ExternalGraphic>
                  <Size>
                    <ogc:Literal>20</ogc:Literal>
                  </Size>
                </Graphic>
              </PointSymbolizer>
            </Rule>

          </FeatureTypeStyle>
        </UserStyle>
      </NamedLayer>
    </StyledLayerDescriptor>
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.