Javascript jsPDF在IE11浏览器中工作不正常
我想使用Javascript jsPDF在IE11浏览器中工作不正常,javascript,jspdf,Javascript,Jspdf,我想使用html2canvas和jsPDF生成PDF 已确认该图像是使用chrome和IE11中的html2canvas创建的 html2canvas($(element).get(0), { useCORS: true, allowTaint: true, logging: true, width: 930, imageTimeout: 0, scrollX: 0, scrollY: -window.pageYOffset }).then
html2canvas
和jsPDF
生成PDF
已确认该图像是使用chrome和IE11中的html2canvas
创建的
html2canvas($(element).get(0), {
useCORS: true,
allowTaint: true,
logging: true,
width: 930,
imageTimeout: 0,
scrollX: 0,
scrollY: -window.pageYOffset
}).then(function(canvas) {
var imgData = canvas.toDataURL("image/png", 1.0);
var img = '<img src="' + imgData + '" />'
var tab = window.open();
tab.document.open();
tab.document.write(img);
tab.document.close();
}
它适用于chrome、edge和firefox。然而,IE生成了一个空白页面的PDF
IE创建了图像,但它创建了一个空白页面PDF。已解决
我没有加载polyfills.*.js
当我加载
polyfills.*.js时,它工作正常。开发者工具控制台中的任何输出都可能表明问题所在?谢谢您的评论。控制台不打印任何问题。
html2canvas($(element).get(0), {
useCORS: true,
allowTaint: true,
logging: true,
width: 930,
imageTimeout: 0,
scrollX: 0,
scrollY: -window.pageYOffset
}).then(function(canvas) {
var imgData = canvas.toDataURL("image/png", 1.0);
var imgWidth = 210;
var pageHeight = imgWidth * 1.414;
var imgHeight = canvas.height * imgWidth / canvas.width;
var heightLeft = imgHeight;
var doc = new jsPDF('p', 'mm');
var position = 0;
doc.addImage(imgData, 'PNG', 0, position, imgWidth, imgHeight);
heightLeft -= pageHeight;
while (heightLeft >= 20) {
position = heightLeft - imgHeight;
doc.addPage();
doc.addImage(imgData, 'PNG', 0, position, imgWidth, imgHeight);
heightLeft -= pageHeight;
}
doc.save('sample.pdf');
}