【问题标题】:Can't capture google map with html2canvas无法使用 html2canvas 捕获谷歌地图
【发布时间】:2013-07-22 15:56:27
【问题描述】:

我在使用 html2canvas.hertzen.com 的 html2canvas 捕获屏幕时遇到问题,当我在我的页面中捕获谷歌地图的地图时,我看不到地图

我的地图

我的捕获

我的代码

html2canvas(document.body, {
    onrendered: function(canvas) {
        document.body.appendChild(canvas);
    }
});

有人给点小费吗?谢谢

【问题讨论】:

    标签: javascript html google-maps


    【解决方案1】:

    以下内容适用于 Chrome 和 Firefox:

    html2canvas(document.body, {
          proxy: "server.js",
          useCORS: true,
          onrendered: function(canvas) {
            document.body.appendChild(canvas);
          }
        });
    

    其中 server.js 是 https://github.com/niklasvh/html2canvas-proxy-nodejs 我还没有尝试过其他可用于 PHP 和 Python 的代理。我不能同时发布两者,但如果您在谷歌上搜索“html2canvas 代理”,您将能够在需要时找到其他人。

    【讨论】:

    • 我使用 html2canvas(来自 html2canvas.hertzen.com)来截取屏幕截图。我收到了这样一个奇怪的错误:我的网页代码放在一个主机上,比如主机 A。如果我的网页包含另一台主机上的图像,比如主机 B,那么我遇到了这个错误:跨域图像加载被拒绝跨域资源共享策略 但是,令人困惑的是,如果主机 B 是 facebook(我的图像是 facebook fbcdn-profile-a.akamaihd.net/hprofile-ak-ash4/… 的直接链接),那么错误就会消失。
    • 我的函数 html2canvas([document.body], { useCORS : true, logging : true, onrendered : function(canvas) { document.body.appendChild(canvas); var myImage = canvas.toDataURL( "image/png"); window.open(myImage); } 有人给点小费吗?Tks
    • 在 html2canvas github问题页面上查看这个问题,它应该可以帮助你:github.com/niklasvh/html2canvas/issues/248
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 2018-02-27
    • 1970-01-01
    • 2013-10-18
    • 1970-01-01
    • 2023-03-28
    相关资源
    最近更新 更多