What is the best solution so far for printing Google Maps as a base layer of Vector layers in Geoserver/OpenLayers application ?
I used to print WMS layers using GeoExt print page example, but when I tried it with Google Maps, I got a blank file !
According to this thread at the GeoExt mailing list:
Re: [Users] Printing google maps using geoext and geoserver Andreas Hocevar Mon, 23 Jan 2012 04:37:31 -0800
Hi,
the GMaps API Terms of Use don't allow you to print. If you only want to print the map background, click on the Google logo in your map to view the same extent in Google Maps, where you can print it.
You can request static images to print from Google Maps API (Static API v2)
If using the free version (scale=2) can get 1280x1280
Free 640x640 640x640 (returns 1280x1280 pixels) Not available.
Google Maps API for Business 2048x2048 1024x1024 (returns 2048x2048 pixels) 512x512 (returns 2048x2048 pixels)
source: https://developers.google.com/maps/documentation/staticmaps/
You can use Openlayers to generate these images see the example:
For professional output (cartographic products!) you can try PDF generation, see wkhtmltopdf or PrinceXML.
Any thing that you see at the browser can be printed, and you can control paper size (A2,A3,A4,Letter), page breaks, etc. with CSS2 paged media.
FOR FIREFOX
download and install the addon SCREENGRAB
@ Googlemaps select area of interest and 'Print Send Link'
click on “Customize and preview embedded map”