2012-07-21 61 views
7

在我的页面上有一个容器,它使用谷歌地图API来显示地图,它下面有一个按钮,用户可以拖动地图到一个位置,然后点击按钮,我想现在在容器中显示地图的屏幕截图,并将其显示在画布上。是否可以用纯JavaScript来做到这一点?如何使用JavaScript的一部分谷歌地图截图

只需要支持Chrome的

回答

17

这将是很难没有浏览器支持这样做。但是你可以使用谷歌静态地图API: https://developers.google.com/maps/documentation/staticmaps/

例子:https://developers.google.com/maps/documentation/staticmaps/#quick_example


有一些项目吸引HTML DOM帆布:

您也可以与一些服务器端解决方案(使用的WebKit)例如phantomjs

代码示例集成的javascript:(阅读更多here

var page = require('webpage').create(); 

page.open('http://www.google.com', function() { 

    page.viewportSize = {width: 1024, height: 768}; 
    page.render('screenshot.png'); 
    phantom.exit(); 
}); 

如果您需要特定的只有镀铬液您可以编写自己的Chrome浏览器扩展程序来执行此操作的范围:Taking screenshot using javascript for chrome extensions

+0

只有铬需要支持 – wong2 2012-07-21 08:23:13

+0

阅读我的答案的编辑版本 – rogal111 2012-07-21 08:42:33

+0

这有没有更新? API 3是否有能力做到这一点? – Jason 2014-10-02 03:29:15