[GIS] Printing maps from OpenLayers with a Google Maps base layer

google mapslegallicenseopenlayersows

I need to implement an automatic pdf report generator on a web site. In the generated pdf file I need to insert images from maps extracted from OpenLayers with a Google Map base layer.

On top of Google Map I have an overlay with some custom OWS (WMS/WFS etc).

Is this possible? And is it allowed? I was reading the ToS of Google, and it is not totally clear to me.

Best Answer

Can be a grey area...

10.1.2 Restrictions against Commercial Use.

(a) No Fees. You must not charge users or any other third party any fee for the use of the Maps API Implementation, the Service, or the Content, except as permitted under Section 9.1.2 (Exceptions). (b) No Direct Marketing. You must not print more than 5,000 copies of sales collateral materials containing a screenshot of the Content for purposes of commercial sales lead generation ("Direct Marketing") or incorporate the Content as a core part of printed matter (such as printed maps or guide books) that you redistribute for a fee. You must contact the Google Maps API Premier sales team to obtain a direct license if you desire to do either of the above.

So you cannot make a pdf and distribute it.

But you can make a print button on your map - as that is a local 'one off' copy. As long as you do not charge for this service.

You can also use the Google Maps Static API - to create an image that will be printer friendly (points/markers, lines and polygons overlay are supported.)

High Resolution is new feature

more info: http://code.google.com/apis/maps/documentation/staticmaps/

another potential solution https://stackoverflow.com/questions/5664492/generate-pdf-on-the-server-from-google-maps-api