Javascript openlayers 3集群中的字体大小

Javascript openlayers 3集群中的字体大小,javascript,openlayers,openlayers-3,Javascript,Openlayers,Openlayers 3,我使用新的openlayers 3 api来显示大量标记。我扩展了集群示例() 除了一件事之外,一切都正常:文本样式中的属性fontSize被忽略。簇标记内的文本大小始终相同 这是openlayers 3中的错误还是我做错了什么?我在3.0.0版本和ol3的当前开发版本中测试了它 var clusters = new $wnd.ol.layer.Vector({ source: clusterSource, style: function (feature

我使用新的openlayers 3 api来显示大量标记。我扩展了集群示例()

除了一件事之外,一切都正常:文本样式中的属性fontSize被忽略。簇标记内的文本大小始终相同

这是openlayers 3中的错误还是我做错了什么?我在3.0.0版本和ol3的当前开发版本中测试了它

    var clusters = new $wnd.ol.layer.Vector({
        source: clusterSource,
        style: function (feature, resolution) {
            var size = feature.get('features').length;

            var style = styleCache[size];
            var radius = size + 10;
            if (radius > 25) {
                radius = 25;
            }

            if (!style) {
                style = [new $wnd.ol.style.Style({
                    image: new $wnd.ol.style.Circle({
                        radius: radius,
                        stroke: new $wnd.ol.style.Stroke({
                            color: '#fff'
                        }),
                        fill: new $wnd.ol.style.Fill({
                            color: color
                        })
                    }),
                    text: new $wnd.ol.style.Text({
                        text: size == 1 ? "●" : size.toString(),
                        fontSize: radius * 2 - 5,
                        fill: new $wnd.ol.style.Fill({
                            color: textColor
                        })
                    })
                })];
                styleCache[size] = style;
            }

            return style;
        }
    });

对于
ol.style.Text
,没有
fontSize
选项。不过有一个
font
选项

font
选项是一个
字符串
,其语法与画布上下文
font
属性相同。默认值为
“10px无衬线”
。请参阅

因此,在您的案例中,您将使用以下内容:

var textStyle=new ol.style.Text({
字体:(半径*2-5)+“px无衬线”,
// …
});

非常感谢。这很有效。那么,文件可能是错的吗?这是一个旧的文档页面。您使用什么ol3版本?3.0.0的发行版。版本3.0.0的文档不是很全面:)所以我尝试了一个旧版本。