google maps api v3 を使って描画した地図をキャプチャする方法


まず、自サイトにgoogle maps api v3
を使って地図を表示させ、ユーザーに自由に場所やズームレベルを変更してもらいます(※この時、地図上にマーカーを付けたり、ストリートビューに変更することも可能とします)。

そして、好きなタイミングでブラウザ上の「OK」ボタンを押すと、その地図をキャプチャして画像として取得する。というようなことをしたいのですが、この地図→画像変換をする良い方法が見つからずに困っております。。。最終的にはその画像をcanvasの背景画像として使用したいのですが、どなたか良い変換方法をご存知の方おられませんでしょうか？

宜しくお願いします。

【捕捉】

無理にキャプチャではなくても、たとえばKMLなどの形式で外部出力する方法でも構いません。

要件は、ユーザーが任意に変換させた地図情報を、(再度、サイトを開き直した時に)まったく同じ状態で再現出来ればそれでもOKです。

動的マップ→静的マップの完全変換などでも、情報お持ちの方おられたは、是非お願いしますm(__)m




APIを経由しない使い方は利用規約違反になると思います。

<https://developers.google.com/maps/terms>の10.1.3

その為、地図の状態をGoogle MapsのAPIから取得して記録しなければなりません。

ページを閉じるときやリロードするときに現在の地図の中心座標とズームレベルをAPIで取得してlocalStorageに保存します。JavaScriptのonunloadイベントを使ってください。

ページを開いた時はJavaScriptのonloadイベントを使ってlocalStorageのデータを取得し地図に設定してください。




> 無理にキャプチャではなくても、たとえばKMLなどの形式で外部出力する方法でも構いません。  
>  要件は、ユーザーが任意に変換させた地図情報を、(再度、サイトを開き直した時に)まったく同じ状態で再現出来ればそれでもOKです。

google map api v3
の状態をDB等に保存して、再度サイトを開き直した時にDBからapiにセットし直せば、地図を再現できるのではないでしょうか？

