我使用以下代码将div(图像和文本)的内容保存为使用html2canvas的图像。
$(function() {
$("#save").click(function() {
var flag = true;
var imgpath = document.getElementById('file').value;
if(imgpath.length == 0)
{
alert('Please select image file to upload.');
flag = false;
}
else
{
html2canvas($('.body740'), {
onrendered: function(canvas) {
theCanvas = canvas;
var url = canvas.toDataURL("image/png");
var br = document.createElement("br");
var center = document.createElement("center");
var newImg = document.createElement("img"); // create img tag
newImg.src = url;
$(".body740").hide();
$("#canvas").show(); //div where the final image is shown
document.getElementById("rsimg").src=url;
document.getElementById("rsa").href=url;
}
});
}
});
});
这是我的链接:http://www.aamras.com/greetings2/
但是,当我单击“保存图像”按钮时,生成图像需要花费大量时间。为什么要花这么多时间加载?有什么问题?
答案 0 :(得分:1)
解决:更改html2cannvas的版本。我以前使用的是html2canvas 0.5.0-alpha 2014版 我切换到html2canvas 0.5.0-alpha1。它可以正确生成图像,并且不会花时间。您可以从https://github.com/niklasvh/html2canvas/releases
下载文件