Javascript 谷歌地图标记为div而不是canvas

Javascript 谷歌地图标记为div而不是canvas,javascript,google-maps,canvas,Javascript,Google Maps,Canvas,是否可以将标记渲染为div或image而不是canvas?我试图在html2canvas的帮助下将google地图的当前视口导出到png,但我无法渲染标记 当我尝试这个的时候 document.getElementsByTagName('canvas')[0].toDataURL(); 我犯了以下错误 SecurityError: Failed to execute 'toDataURL' on 'HTMLCanvasElement': Tainted canvases may not be

是否可以将标记渲染为div或image而不是canvas?我试图在html2canvas的帮助下将google地图的当前视口导出到png,但我无法渲染标记

当我尝试这个的时候

document.getElementsByTagName('canvas')[0].toDataURL();
我犯了以下错误

SecurityError: Failed to execute 'toDataURL' on 'HTMLCanvasElement': Tainted canvases may not be exported.

注:我在html2canvas中使用了
useCORS
选项,在渲染图像时没有问题。

谷歌地图使用的画布是由它们的脚本渲染的,因此您自己的脚本中的任何“useCORS”选项都是无关的。如果谷歌地图污染了它的画布,你就没有什么可行的办法了


获得类似于您尝试执行的操作的一种方法是使用支持CORS的来渲染地图的静态图像,而不是尝试渲染实时界面(尽管图像大小有限制)。

感谢您的回答,我知道静态地图,但我可以导出所有当前内容,如标记、路径、路径、,是否从当前视口中删除?地图将是动态的,换句话说,用户可以添加他们自己的标记,等等。如果你的地图上有一个编辑器,肯定有办法提取用户添加的内容?不过,尝试将所有这些内容塞进静态映射URL可能会很有趣。