OpenLayers Extension ol:ext FontSymbol 如何将多个字符添加到字形中?

OpenLayers Extension ol:ext FontSymbol how to add multiple chars into glyph?

我正在使用 OpenLayers 6 和 ol:ext FontSymbol 和免费的 FontAwesome 来创建标记。 我需要将数字字符放入标记的中心, 它仅适用于 0-9 个字符,但对于超过 1 个字符,它不起作用并且只显示“1”,就像字形只接受 1 个字符一样。

这是我的风格:

var styles = new ol.style.Style({
        image: new ol.style.FontSymbol({
            glyph: number.toString(),
            form: 'marker',
            radius: 20,
            fontSize: 0.2,
            fontStyle: 'sans-serif',
            rotation: 0,
            rotateWithView: false,
            color: 'white',
            fill: new ol.style.Fill({
                color: colorparam.toString(),
            })
        }),
    });

我做错了吗?或者有什么更好的方法吗? 我尝试添加原始样式 - 图像后的文本,但所有标记本身上方显示的所有标记的字符。

var styles = new ol.style.Style({
        image: new ol.style.FontSymbol({
            glyph: '',
            form: 'marker',
            radius: 20,
            fontSize: 0.2,
            fontStyle: 'sans-serif',
            rotation: 0,
            rotateWithView: false,
            color: 'white',
            fill: new ol.style.Fill({
                color: colorparam.toString(),
            })
        }),
        text: new ol.style.Text({
            text: number.toString(),
            scale: 1.2,
            fill: new ol.style.Fill({
                color: "#fff"
            }),
        }),
    });

我选择使用字体而不是渲染图像/图标文件,因为我认为字体源将加载一次并且比图像更轻。

ol-ext FontSymbol 旨在显示字体图标,并且只绘制您给它的字符串的第一个字符...符号本身显示为图像,因此在 ol 文本样式下绘制。
您可以在 ol-ext (https://github.com/Viglino/ol-ext/issues) 请求一个新功能来显示全文字符串而不是符号中的字符。