通过画布制作客户端截图

时间:2014-02-04 15:44:41

标签: javascript html html5 dom canvas

我正在尝试使用html2canvas创建网页的屏幕截图。我是画布的新手,我认为这就是为什么我无法使html2canvas.js库正常工作的原因。

请参阅http://jsfiddle.net/cantdutchthis/7sCya/

在html2canvas.js文件中加载后,运行以下命令;

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

正文包含三个对象,一个段落标记,一个带有uri源的图像和一个placeholder kitten

为什么画布只制作段落和uri来源的打印屏幕,为什么不是小猫?

1 个答案:

答案 0 :(得分:1)

由于same-origin policy,因此不允许这样做。它仅在图像具有与脚本相同的协议和主机时才有效。

使用本地图片查看此更新的fiddle(如果第一次加载时没有看到相对图片run,请再次按../../favicon.png。)

您需要在html2canvas website上展示代理,或者在启动时为您的浏览器添加特殊标记,或者从cross-origin resource sharing启用的answer服务器加载图片。