【发布时间】:2016-03-23 16:07:05
【问题描述】:
我有一个带有表格和图形的 div,需要导出为 PDF,我使用 html2canvas.js 创建了一个画布,并使用 jsPDF.js 在 pdf 文档中添加了画布,它工作正常!但仅在 Mozilla Fire Fox 和 Google Chrome 中,Internet Explorer 9、10 和 11 不起作用!任何人都知道是否可以在 IE 中执行此操作还是不兼容问题?
代码:
函数 createPDF(relatorio){
//获取报告模式 var form = $(relatorio);
var cache_width = form.width();
//A4 SIZE
var a4 =[ 595.28, 841.89];
//CALL THE GET CANVAS FUNCTION
getCanvas(form).then(function(canvas){
var imgData = canvas.toDataURL('image/png');
var imgWidth = 210;
var pageHeight = 295;
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 >= 0) {
position = heightLeft - imgHeight;
doc.addPage();
doc.addImage(imgData, 'PNG', 0, position, imgWidth, imgHeight);
heightLeft -= pageHeight;
}
doc.save('relatorioOrcadoRealizado.pdf');
form.width(cache_width);
}
//为画布转换 DIV
函数 getCanvas(form){
返回 html2canvas(表单,{
imageTimeout:2000,
removeContainer:true
});
}
【问题讨论】:
-
欢迎来到 Web 开发的世界。 IE 通常会导致您的所有问题并且很难解决。您的任务应该在 IE 10 和 11 中运行,但在 IE 9 中永远无法运行。您应该检查您的视线是否在兼容模式下运行,如果它关闭并且您应该能够在 10 和11
-
感谢您的回复!我在 IE 10 和 11 上工作,你知道我怎样才能使这项工作在 IE 9 上工作?
-
您的库是否正式支持 IE 9,它们将是您确定是否可能的最佳资源
标签: javascript html css pdf