我需要做一个iframe的快照,但html2canvass不要这样做,这是众所周知的。
我尝试将iframe的内容传递给html2canvas函数,并使用myiframe.contentWindow.document.body
元素,只有当我的页面和iframe中的页面都在同一个域中时(安全原因),这才起作用我需要什么。
html2canvas(divToShare.contentWindow.document.body, {
onrendered: function(canvas) {
screenshot = canvas.toDataURL();
}
};
但现在出现问题...... 输出图像与期望值不太相似。按钮看起来像文本字段和其他奇怪的东西...... 一个例子:
原始页面的图像
这是html2canvas的png结果,不同的按钮和文本框,也没有背景。
我做错了吗?或图像渲染器不完全相同是正常的? 我只需要拍一张iframe的快照,如果你有另外一种方法可以做到这一点,那对我来说没问题。
答案 0 :(得分:1)
也许是因为html2canvas只能在用户侧工作但不能在服务器端工作。并且无法呈现iframe中页面的CSS。