2014-06-05 13 views
5

Ich muss eine Seite exportieren, die Prospektkarte zu pdf enthalten. Ich habe versucht, den Kartencontainer in ein Bild zu konvertieren, aber das funktioniert nicht perfekt. Der Code, den ich verwendet, ist hier http://jsfiddle.net/Sq7hg/2/Convert leaflet map snippet to image

html2canvas([document.getElementById('mydiv')], { 
onrendered: function (canvas) { 
    document.getElementById('canvas').appendChild(canvas); 
    var data = canvas.toDataURL('image/png'); 
    console.log(data) 
    // AJAX call to send `data` to a PHP file that creates an image from the dataURI string and saves it to a directory on the server 

    var image = new Image(); 
    image.src = data; 
    document.getElementById('image').appendChild(image); 
} 

});

Dieser Code funktioniert nicht perfekt für die Faltblatt-Map.Wie kann ich das umsetzen?

Antwort

4

Ich denke, Sie sollten besser mit leaflet-image Plugin, die genau das tut. Aus der Kopfzeile ist eine Demo verlinkt. Der Hauptfang zwingt Leaflet, Leinwand zum Rendern zu verwenden.

+2

Dank llja..I versucht this.But seine nur arbeiten, wenn kein markers.when sind je Eine Markierung wird hinzugefügt, um zu mappen, dieser Fehler wird in der Konsole 'Uncaught TypeError: Kann die Eigenschaft' 0 'von undefined nicht lesen' –

+0

great..it arbeitete .. :) Marker Größe wurde vorher nicht definiert und das war der Grund für die Fehler..Jetzt ist es perfekt..Danke, llja .. –

4

Ich hatte ein Problem, die Broschüre Map mit speziellen Markern zu exportieren, ich habe versucht, das Plugin leaflet-image zu verwenden, aber es funktioniert nur mit Standardmarkern.

Am Ende habe ich die Karte im Server (Node) erstellt.

schrieb ich einen Beitrag, wie die Broschüre Karte von PDF zu exportieren, siehe Link unten

Export leaflet map to pdf report