标记作为图标与Openlayers中的动态颜色

时间:2013-03-19 17:00:11

标签: twitter-bootstrap openlayers

我有一个代码,可以通过php动态地在Openlayers上创建动态标记:

$shapeStyle="\"$shapeName\":{\"graphicName\": \"triangle\",fillColor:\"$color\",pointRadius:$size,label:\"$label\",labelYOffset:7+$size}"

现在我想要升级此方法并使用图标执行相同的操作,而不是仅限于Openlayer提供的几个选项:“circle”,“square”,“star”,“x”,“cross”和“三角形”。

我知道可以使用OpenLayers.Marker来完成,但由于我将拥有N种颜色类型,因此对于我来说,对N个M图标集进行着色操作似乎太贵了。而且也不太灵活。

我想知道我是否可以使用imageDiv(OpenLayers.Icon.imageDiv),所以我可以添加一些插入bootstrap的Font Awesome图标的html。这个图标可以通过CSS着色,如本文所述:“Can I add color to bootstrap icons only using CSS?”。

这种替代方法有希望吗?

1 个答案:

答案 0 :(得分:1)

如果继续使用矢量要素和样式,则可以执行此操作。将"externalGraphic""graphicWidth""graphicHeight"

一起使用

请参阅以下选项:

http://dev.openlayers.org/releases/OpenLayers-2.12/doc/apidocs/files/OpenLayers/Feature/Vector-js.html#OpenLayers.Feature.Vector.OpenLayers.Feature.Vector