如何在javascript中将带有路由的google地图转换为图像
我正在尝试将谷歌地图的路线转换成png图像。我用的是canvas2image。我成功地使用javascript在地图中的标记之间创建了路由。但我正在尝试使用html2canvas转换图像。但它说: 未捕获的DomeException:未能在上执行“toDataURL” “HtmlCanvaElement”:可能无法导出受污染的画布” 以下是我导出到图像的代码:如何在javascript中将带有路由的google地图转换为图像,javascript,jquery,google-maps,html2canvas,Javascript,Jquery,Google Maps,Html2canvas,我正在尝试将谷歌地图的路线转换成png图像。我用的是canvas2image。我成功地使用javascript在地图中的标记之间创建了路由。但我正在尝试使用html2canvas转换图像。但它说: 未捕获的DomeException:未能在上执行“toDataURL” “HtmlCanvaElement”:可能无法导出受污染的画布” 以下是我导出到图像的代码: $("#divclick").click(function () { html2canvas($("#totalimage"),
$("#divclick").click(function () {
html2canvas($("#totalimage"), {
useCORS: true,
onrendered: function (canvas) {
alert(canvas.toDataURL("image/png"));
$('#img_val').val(canvas.toDataURL("image/png"))
$("#show_img").append(canvas);
});
}
});
当我使用谷歌地图的时候,没有标记意味着方向服务。当我在谷歌地图上使用方向服务时,它就来了
window.onload=函数(){
变量映射选项={
中心:新建google.maps.LatLng(标记[0].lat,标记[0].lng),
缩放:10,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
var map=new google.maps.map(document.getElementById(“dvMap”)、mapOptions);
var infoWindow=new google.maps.infoWindow();
var lat_lng=新阵列();
var latlngbounds=new google.maps.latlngbounds();
对于(i=0;i
打印
看起来您需要将标记的优化属性设置为false
:
var marker = new google.maps.Marker({
position: myLatlng,
map: map,
optimized: false,
title: data.title
});
我无法解释为什么有多段线和没有将多段线添加到地图时会有区别
代码片段:
window.onload=function(){
变量映射选项={
中心:新建google.maps.LatLng(标记[0].lat,标记[0].lng),
缩放:10,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
var map=new google.maps.map(document.getElementById(“dvMap”)、mapOptions);
var infoWindow=new google.maps.infoWindow();
var lat_lng=新阵列();
var latlngbounds=new google.maps.latlngbounds();
对于(i=0;i