2010-09-07 5 views

Répondre

0

Il y a plusieurs autres questions portant sur cette question: How to print Google Map markers

Le court, Google Maps API Javascript n'imprime pas des superpositions (marqueurs, lignes) correctement ou pas du tout. Vous pouvez utiliser l'API statique de Google Maps, mais vous serez limité au nombre de superpositions que vous dessinez sur la carte. C'est, cependant, le meilleur moyen d'obtenir une impression fiable. Le long, les marqueurs ont la classe 'gmnoprint', ce qui les empêche de s'afficher sur le rendu imprimé. Vous pouvez parcourir les marqueurs et supprimer cette classe, ce qui devrait leur permettre d'être imprimés sur la page. Pour autant que je sache, cela ne fonctionnera pas pour les lignes de direction.

0

plusieurs jours en essayant d'imprimer les icônes et les routes, donc finalement je l'ai fait !!!!!!!! J'ai trouvé un js script that convert html to canvas et j'ai pensé que ce serait la solution mais malheureusement ce n'était pas du tout.

si trouvé que, lorsque je l'utilise et dit au navigateur pour imprimer la page enfin le montrer !!!! mais la toile ne montre pas encore les icônes ¿...? J'ai donc exécuté le script au chargement et ajouté le résultat dans un div derrière la carte (si vous mettez display: none ne fonctionne pas!). désolé de mon anglais :) ici un code binaire:

<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> 
bien

, j'espère vous aider !!!

0
$("#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); 
    });