Openlayers 3:为feature添加文本标签
Openlayers 3: add text label to feature
我有当前设置在这里:全功能小提琴的例子,而我已经设法缩放到每个多边形特征,我也想在每个上显示一个集中的文本标签…get_fields
方法中发现的field_title
变量。我不知道如何做到这一点,我所有的谷歌已经提出了这篇文章:http://openlayers.org/en/v3.3.0/examples/vector-labels.html我发现完全困惑,因为我是一个小的新OL!
要添加一个文本到ol.Feature
中,您将存储描述在特征中,并设置一个样式函数(将从特征中获取描述并显示它):
field_polygon.set('description', field_title);
field_polygon.setStyle(styleFunction);
function styleFunction() {
return [
new ol.style.Style({
fill: new ol.style.Fill({
color: 'rgba(255,255,255,0.4)'
}),
stroke: new ol.style.Stroke({
color: '#3399CC',
width: 1.25
}),
text: new ol.style.Text({
font: '12px Calibri,sans-serif',
fill: new ol.style.Fill({ color: '#000' }),
stroke: new ol.style.Stroke({
color: '#fff', width: 2
}),
// get the text from the feature - `this` is ol.Feature
// and show only under certain resolution
text: map.getView().getZoom() > 12 ? this.get('description') : ''
})
})
];
}
你小提琴。
由于我是新来的,不允许评论,所以我把我的评论作为@andre_ss6问题的新答案。我也会在this
上得到Window
。对我来说有效的是传递特征对象作为函数的第一个参数:
function styleFunction(feature) {
,然后使用该参数代替this
:
text: feature.get('description')
相关文章:
- 在d3.js中添加文本标签以强制定向图链接
- 在每个条形图的中间添加文本标签&鼠标悬停事件
- 通过在 JavaScript 中使用正文标签的 ID 向
标签添加文本
- 如何将attr(id)添加到特定值的<文本>标签-Js/Jquery
- 如何为一行文本输入字段添加用户可编辑的文本标签
- 如何在e2e测试Angular Protractor的标签中添加文本
- 如何在文本内容周围添加HTML标签
- jQuery添加文本之间的href标签的td
- 在 CKEditor 中,如何为按钮添加“文本”标签
- HTML如何添加文本到现有的标签
- 表格单元格中预填充的文本显示为“未定义”.当在JS中添加HTML标签时
- 在复选框标签旁边添加文本
- 如何在字符串客户端添加html标签之间的文本
- 不能在d3应用程序的文本标签上添加引导弹出窗口
- 在Lightswitch 2013中添加自定义文本标签
- innerHTML添加文本,但不添加html标签
- 通过添加html标签重新格式化文本
- 在IE中使用jquery在td标签中添加文本
- 为动态生成的输入文本标签添加值的正确方法
- Openlayers 3:为feature添加文本标签