Google maps 无法打印带有图标的google地图

Google maps 无法打印带有图标的google地图,google-maps,Google Maps,当我打印谷歌地图时;它不打印图标;如何打印完整的谷歌地图 我正在使用google maps api v3 for javascript还有几个其他问题可以解决这个问题: 简而言之,GoogleMapsJavaScriptAPI不能正确或根本不能打印覆盖图(标记、线条)。您可以使用GoogleMaps静态API,但您将受限于在地图上绘制的覆盖图的数量。然而,这是获得可靠打印的最佳方法 长标记具有“gmnoprint”类,该类禁止它们显示在打印渲染上。您可以遍历标记并删除此类,这样可以在页面上打印

当我打印谷歌地图时;它不打印图标;如何打印完整的谷歌地图
我正在使用google maps api v3 for javascript

还有几个其他问题可以解决这个问题:

简而言之,GoogleMapsJavaScriptAPI不能正确或根本不能打印覆盖图(标记、线条)。您可以使用GoogleMaps静态API,但您将受限于在地图上绘制的覆盖图的数量。然而,这是获得可靠打印的最佳方法


长标记具有“gmnoprint”类,该类禁止它们显示在打印渲染上。您可以遍历标记并删除此类,这样可以在页面上打印标记。据我所知,这对方向线不起作用。

很多天都在尝试打印图标和路线,所以我终于做到了!!!!!!!! 我找到了一个js,我认为这将是解决方案,但不幸的是,它根本不是

如果发现了,当我使用它并对浏览器说打印页面时,最终显示它!!!!但是画布上还是没有显示图标

因此,我只是在加载时执行脚本,并将结果画布附加到映射后面的一个div中(如果您将display:none不起作用!)。对不起,我的英语:) 下面是位代码:

<div id="imprimir">
    <h1><?php echo $direccion;?></h1>
    <div id="distancia"></div>
    <div id="map-canvas" style="margin: 0;padding: 0; height: 550px;z-index:10"></div>                          
    <div id="captura" style="position:absolute;top:100px;left:50px;"></div>
</div>
//------------ ... 
Google Map code here
//------------ ...
<script>
    html2canvas($("#imprimir"), {
        onrendered: function(canvas) {
            $("#captura").html(canvas);                                        
        }
    });            
</script>

//------------ ... 
谷歌地图代码在这里
//------------ ...
html2canvas($(“#imprimir”){
onrendered:函数(画布){
$(“#captura”).html(画布);
}
});            
好吧,我希望这对你有帮助

$(“#btnPrint”)。单击(函数(){
 $("#btnPrint").click(function () {
        var contents = $("#map_canvas").html();
        var frame1 = $('<iframe />');
        frame1[0].name = "frame1";
        frame1.css({ "position": "absolute", "top": "-1000000px" });
        $("body").append(frame1);
        var frameDoc = frame1[0].contentWindow ? frame1[0].contentWindow : frame1[0].contentDocument.document ? frame1[0].contentDocument.document : frame1[0].contentDocument;
        frameDoc.document.open();
        //Create a new HTML document.
        frameDoc.document.write('<html><head><title>DIV Contents</title>');
        frameDoc.document.write('</head><body>');
        //Append the external CSS file.
        frameDoc.document.write('<link href="style.css" rel="stylesheet" type="text/css" />');
        //Append the DIV contents.
        frameDoc.document.write(contents);
        frameDoc.document.write('</body></html>');
        frameDoc.document.close();
        setTimeout(function () {
            window.frames["frame1"].focus();
            window.frames["frame1"].print();
            frame1.remove();
        }, 500);
    });
var contents=$(“#map_canvas”).html(); 变量frame1=$(''); frame1[0]。name=“frame1”; frame1.css({“位置”:“绝对”,“顶部”:“-1000000px”}); $(“正文”)。追加(第1帧); var frameDoc=frame1[0]。contentWindow?frame1[0]。contentWindow:frame1[0]。contentDocument.document?frame1[0]。contentDocument.document:frame1[0]。contentDocument; frameDoc.document.open(); //创建一个新的HTML文档。 frameDoc.document.write('DIV Contents'); frameDoc.document.write(“”); //附加外部CSS文件。 frameDoc.document.write(“”); //附加DIV内容。 frameDoc.document.write(内容); frameDoc.document.write(“”); frameDoc.document.close(); setTimeout(函数(){ window.frames[“frame1”].focus(); window.frames[“frame1”].print(); 框架1.移除(); }, 500); });