我试图从传单中的地图中获取PNG中的图像,因为它,我开始使用Leaflet-Save-Map-To-PNG,它运行良好,但我有一个问题。我用GeoJSON表示多边形,当我从中获取地图时,我只获得了瓷砖和标记,但没有获得多边形。
我已经调查了几个站点,其中一个类似问题的解决方案是定义一个变量,强制Leaflet不使用SVG并改为使用Canvas(L_PREFER_CANVAS = true;),但结果没有区别。
这是我的代码:
html2canvas(jQuery('#mapdiv'), {
useCORS: true,
proxy: 'proxy.php',
onrendered: function(canvas) {
var img = canvas.toDataURL();
dataURL = img.replace(/^data:image\/(png|jpg);base64,/, "");
$.post("save.php", {
savedMap: dataURL
}, function(data) {
alert('Image Saved to : ' + data);
});
}
});

提前感谢您的帮助!