我想在 Mapbox GL JS 中围绕一个对象画一个圆圈,但它似乎不支持绘制类似的东西。所以我尝试在 Photoshop 中创建一个带有红色圆圈和透明背景的 PNG。但是当我在 map 上加载图像时,图像失去了透明度。
我用来生成它的代码是:
var sourceObj = new mapboxgl.ImageSource({
url: '/img/circle-red.png',
coordinates: [
[-80.425, 46.437],
[-71.516, 46.437],
[-71.516, 37.936],
[-80.425, 37.936]
]
});
map.addSource('someimage', sourceObj);
map.addLayer({
"id": "someimage",
"source": "someimage",
"type": "raster"
});
有人知道如何实现透明背景吗?或者有人知道在 map 上画圆圈的替代方法吗?
提前致谢。
最佳答案
我知道已经晚了一年,但如果有人再次遇到这个问题,图层上有一个光栅不透明度属性。请参阅https://www.mapbox.com/mapbox-gl-js/example/adjust-layer-opacity/ .
map.addLayer({
"id": "current_image",
"source": "current_image",
"type": "raster",
"paint" : {
"raster-opacity" : 0.5
}
});
如果您正在处理一张知道不透明度的图像,那就可以了!
关于javascript - 透明图像叠加Mapbox GL JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37767908/