我使用Mapnik渲染OSM XML图块,但是当我增加道路名称的字体大小时,某些道路似乎连续两次显示文字。
这是我的意思的图像:
请注意不必要的重复:
有谁知道如何解决这个问题?
答案 0 :(得分:0)
不确定,但我认为你需要"文本间距"(一行上重复文本标签之间的距离(又称标签间距))。
有用的链接 - https://github.com/mapbox/carto/blob/master/docs/latest.md
答案 1 :(得分:0)
如果您直接使用Mapnik XML设置图层样式,则您var plotErrorbar = circles.append("g")
.attr("class", "errorBar")
.attr("transform", function(d) {
return "translate(" + x(d.x) + "," + y(d.y) + ")"
})
.style("stroke-dasharray", ("3, 3"))
.call(eb)
.on("mouseover", function(d) {
console.log(d);
div.transition()
.duration(200)
.style("opacity", .9);
div.html("x = " + d.x + "</br>" + "y= " + d.y)
.style("left", (d3.event.pageX) + "px")
.style("top", (d3.event.pageY - 28) + "px");
})
.on("mouseout", function(d) {
div.transition()
.duration(500)
.style("opacity", 0);
});
中要查找的属性为repeat-distance
。此属性定义为(以像素为单位):
重复标签之间的最小距离,例如街道名称或盾牌符号(跨特征工作)
请参阅此处的参考:https://github.com/mapnik/mapnik/wiki/TextSymbolizer