2017-05-26 1 views
0

Ich muss eine GIS-Karte erstellen, die einige Punkte und Polygone zeigt. Dieser Kartengenerierungsprozess muss im Hintergrund ausgeführt werden, so dass jeden Tag zu einer bestimmten Tageszeit eine Karte erstellt und an einer bestimmten Stelle im Dateisystem gespeichert wird.Wie generiere ich GIS Maps ohne eine browserspezifische Bibliothek?

Ich glaube nicht, dass Prospekt dafür verwendet werden kann, wie es auf dem Browser läuft. Nicht sicher, wie das in QGIS auch passieren wird .... jedes Licht in dieser Richtung wird hilfreich sein.

Meine Anforderung besteht darin, einen HTML-Bericht zu generieren, der eine Karte enthält. Ich kann es nicht im Browser tun, weil der Benutzer den Browser nicht benutzt und möchte, dass der Bericht automatisch jeden Tag in seiner Mailbox ist.

Ich werde Knoten Js verwenden, um HTML zu generieren.

Wie kann dies erreicht werden? Bitte rette mein Leben.

Dank

Antwort

0

Ich empfehle Ihnen, etwas wie phantom.js zu verwenden, was im Wesentlichen eine Bildschirmaufnahme der Karte ist, die Sie auf einer Webseite erzeugen, die auf einer kopflosen, off-screen Webseite angezeigt wird. Welche Art von Kartenserver Sie zum Generieren der Karten verwenden, liegt bei Ihnen. Dadurch können Sie jedoch eine Browseransicht der Karte erfassen und sie in einer PDF-Datei oder einem Bild, das in eine E-Mail eingebettet ist, erneut packen.

Machen Sie diese PDF oder ein Bild GeoPDF oder GeoTIFF oder ein Beispiel und das Ergebnis würde einige geospatial Aspekte beibehalten, anstatt eine dumme Bildschirmaufnahme zu sein.

0

ich etwas liefern kann eine Karte Tiling Service (wie wms) verwenden würden, die Sie dann serverseitige und Stück zusammen die Fliesen abfragen. Ich hatte viel Glück mit Geoserver (http://geoserver.org/), aber es gibt auch andere Lösungen. Ich bin mir nicht sicher, ob Sie Google Maps API oder Open Street Map so abfragen können. Das Schöne an Ihrem eigenen Kartenserver ist, dass Sie die gewünschte Karte an einer Stelle vollständig definieren können. Abgesehen davon würde ich im npm-Repository nachsehen, ob jemand dieses Problem schon einmal gelöst hat.

Verwandte Themen