有人可以解释一下如何使用GetLegendGraphic为Geoserver中的图层定义javascript / leaflet中的图例标题吗?我尝试了很多东西,比如:
Here我尝试在各个图层的Geoserver Style部分制作此规则。
Here我也找到了很好的讨论但不是真正的解决方案。
同时阅读this,我基本上只需要这个简单的文字作为"美国人口"在示例中。
我还尝试在请求中简单地编写"...&legend_options=title:"LEGEND"..."
,"legendTitle:true"
或类似的变体,但它也不起作用。这是我的代码:
var legend = L.control({position: 'bottomleft'});
legend.onAdd = function (map) {
div.innerHTML +=
'<img src="http://localhost:8080/geoserver/WORKSPACE/wms?REQUEST=GetLegendGraphic&VERSION=1.1.0&FORMAT=image/png&WIDTH=20&HEIGHT=20&LAYER=WORKSPACE:Layer_NAME&legend_options=forceLabels:on&fontName:Arial;fontSize=14" alt="legend" width="145" height="130">';
return div;
};
一般情况下Geoserver没有显示图例标题会有问题吗?请帮助我,这显然很简单的事情并不令人烦恼:S
答案 0 :(得分:0)
图例标题取自您使用decorators时显示的图层的标题。您需要创建一个layouts目录并在那里创建一个简单的xml文件。
但是,无法为GetLegendGraphic
请求添加标题。由于您知道图层的标题,因此您可以使用JavaScript在您选择的位置以您选择的字体添加它。有关详细信息,请参阅邮件列表中的discussion。