OpenLayers 3图像和文本样式zindex

时间:2015-05-19 18:04:10

标签: javascript openlayers-3

我注意到文本和图像样式在渲染时似乎不尊重它们的图层顺序。例如,当许多具有这些样式的特征靠近在一起时,所有文本都呈现在其他重叠矢量特征之上。有没有办法禁用或覆盖此行为?感谢。

myFeature.setStyle(new ol.style.Style({
  image: new ol.style.Icon({
    src: '/images/myImage.png',
    anchor: [0.5, 1],
    anchorXUnits: 'fraction',
    anchorYUnits: 'fraction'
  })
}));

myOtherFeature.setStyle(new ol.style.Style({
  image: new ol.style.Circle({
    fill: new ol.style.Fill({
      color: 'rgb(255,200,77)'
    }),
    stroke: new ol.style.Stroke({
      color: 'rgba(0,0,0,.2)',
      width: 1
    }),
    radius: 14
  }),
  text: new ol.style.Text({
    font: 'light 10px Arial',
    text: '1',
    fill: new ol.style.Fill({color: 'black'}),
    stroke: new ol.style.Stroke({color: 'black', width: 0.5})
  })
}));

1 个答案:

答案 0 :(得分:1)

当使用文本堆叠点符号时,如果希望文本粘贴到符号,则需要为每个点赋予自己的(增加的)zIndex。见http://jsfiddle.net/8g1vayvc/。您也可以在样式函数中执行此操作:

<<