für ein Projekt wird ein Kartenausschnitt mittels Openlayers im Browser mit zugehörigem Marker angezeigt, nun muss dieser Ausschnitt aber als PDF oder wenigsten Bilddatei druckbar sein. Hat jemand vielleicht einen Tip wie dies zu bewerkstelligen ist, Mapfish kann ich leider nicht benutzen und ebenso wenig Kommandozeilen Tools. Es soll möglichst nur mit PHP, JavaScript und Html umsetzbar sein.
also dabei handelt es sich um ein gewerbliches Projekt, aus diesem Grund kann auch nicht auf Dienste wie Mapfish zurückgegriffen werden. Das Wiki hilft leider nicht wirklich, weil im Browser zwingend eine dynamische Karte erstellt werden muss, dieser Ausschnitt muss dann später über einen Button als PDF gedruckt werden. Ich arbeite zurzeit mit dem Beispiel von http://trac.osgeo.org/openlayers/wiki/TileStitchingPrinting und dem Verfahren TileStithingPrinting. Dies läuft soweit das er mir die Dynamische Karte als statisches JPG speichert. Leider zur Zeit noch mit Fehlermeldung, aber das JPG der Karte wird schon mal erzeugt. Nur leider werden die auf der Karte erzeugten Layer, wie Marker oder Polyline nicht mitgespeichert.
http://osgeo-org.1560.x6.nabble.com/How-to-print-map-area-with-openlayers-td3918307.html kann dir helfen, da steht wie andere das machen.
Scheint aber immer ein mix aus Client und Server zu sein. Also auf dem Client die sichtbaren Features im Overlay extrahieren, zum Server schicken, der Server malt dann auf das gestitchte Bild die Overlays drüber (mit gd oder PIL oder sonstwie).
Der Server “kennt” die Dimensionen des Browserfensters und den Inhalt aller Overlays, die auf dem Client angezeigt werden, falls sie von ihm kommen.
Wenn er das Kartenlayer (Background) selber liefert, kennt er auch das.
Wenn die Webseite ein einziges externes Kartenlayer anbietet, ist das auch bekannt.
Sind es mehrere Kartenlayer zur Auswahl, könnte Openlayers mit einem Event für den Layer-Switcher dem Server den gerade ausgewählten Background melden. Dann wäre auch das klar.
Somit “kennt” der Server aktiven Hintergrund, Ausschnitt und aktivierte Overlays und daraus kann er natürlich “irgendwie” eine Grafik oder ein PDF erzeugen.
…und selbst wenn nicht kann man beim Klick auf den “Drucken”-Button die im Client sichtbaren Features an den Server schicken. Dann kennt der Server die auch.
Für eine Übersicht aller bekannten Möglichkeiten auch bei http://help.openstreetmap.org nach “print” oder “paper” suchen … da gibt es hunderte Tipps zu.