无法将html2canvas中的画布添加到jspdf addHTML()方法中

时间:2018-05-02 16:21:18

标签: angular jspdf html2canvas

我在 angular5 之上构建应用程序,我尝试使用结合 html2canvas jspdf.addHTML()函数添加html。

const content = this.vc_print_section.nativeElement;

html2canvas(content).then(canvas => {
   const doc = new jsPDF('p', 'mm');

   doc.addHTML(canvas, _ => {
      doc.save('test.pdf');
   });
});

但是发生了错误:

ERROR Error: Uncaught (in promise): [object String]

1 个答案:

答案 0 :(得分:1)

jsPDF使用addHTML方法自行调用html2canvas。正确的代码应该是这个:

const content = this.vc_print_section.nativeElement;
const doc = new jsPDF('p', 'mm');

doc.addHTML(canvas, _ => {
    doc.save('test.pdf');
});

即使以这种方式,如果您使用的是html2canvas的最新版本,我认为它与jsPDF不兼容。在addhtml.js插件中可能需要进行一些更改。