首页 文章

Geoserver 2.10 Openlayers 3 TextSymbolizer标签未显示

提问于
浏览
1

我是geoserver和sld的新手 . 我的OSM基础层上有2层 . 一个用于创建热图,另一个用于标签 . 我的热图和基础层渲染得很好,但标签文本没有显示在openlayers中 . 当我在地理服务器中预览时,它显示正常,但是当我尝试在javascript中渲染它时,它只显示缩小 . 我似乎无法在网上找到关于这个问题的任何内容 .

这是SLD:

<FeatureTypeStyle>
        <Rule>
          <Name>AQI text</Name>
          <Title>AQI Text</Title>
          <Abstract>AQI information</Abstract>
           <TextSymbolizer>
              <label>
                  <ogc:PropertyName>aqi</ogc:PropertyName>
            </label>
         </TextSymbolizer> 
        </Rule>
      </FeatureTypeStyle>

以下是geoserver预览的快照:

enter image description here

这是javascript openlayers代码:

var londonLonLat = [-0.118092, 51.509865];
    var londonWebMercator = ol.proj.fromLonLat(londonLonLat);

    var layers = [
        new ol.layer.Tile({
          source: new ol.source.OSM()
        }),
        new ol.layer.Image({
          //extent: [-13884991, 2870341, -7455066, 6338219],
          source: new ol.source.ImageWMS({
            url: 'http://159.203.81.20:8080/geoserver/wms',
            params: {'LAYERS': 'tiger:shapefile'},
            serverType: 'geoserver'
          })
        }),

        new ol.layer.Image({
          //extent: [-13884991, 2870341, -7455066, 6338219],
          source: new ol.source.ImageWMS({
            url: 'http://159.203.81.20:8080/geoserver/wms',
            params: {'LAYERS': 'test2:test_text_layer'},
            serverType: 'geoserver'
          })
        })
      ];
      var map = new ol.Map({
        layers: layers,
        target: 'map',
        view: new ol.View({
          center: londonWebMercator,
          zoom: 10
        })
      });

这是页面的快照:

enter image description here

这是缩小的快照:

enter image description here

2 回答

  • 1

    通过向我的数据库添加预定义的边界点(如锚点)解决了类似的问题,然后将这些点作为我的边界框提供给geoserver:

    • 创建4个点(例如:北,南,东,西),这将定义一个足够大的框,以适应您内部的所有数据可视化 .

    • 在geoadmin中找到您的图层bounding box并从数据中选择计算 .

    • sld 中,您可以定义规则以使这些边界点不可见 .

    重新计算边界框,其中地理服务器将在任何投影中显示您的数据 .

  • 1

    通过更改投影来修复它:

    enter image description here

相关问题