如何在Angular 2中将所有div内部导出为pdf

时间:2017-06-29 05:05:06

标签: javascript angular jspdf

我有一个id为id =“div1”的div,我需要将其转换为pdf。所以我尝试用角度为2.JSpdf的JSPf做得很好,当我试着做doc.autoTable(col,rows );;但是当我想要导出时,它会不能正常工作

<div class="container" id="div1">
<table>
  <tr>
    <th>Company</th>
    <th>Contact</th>
    <th>Country</th>
  </tr>
  <tr>
    <td>Alfreds Futterkiste</td>
    <td>Maria Anders</td>
    <td>Germany</td>
  </tr>
  <tr>
    <td>Centro comercial Moctezuma</td>
    <td>Francisco Chang</td>
    <td>Mexico</td>
  </tr>
  
</table>
        <button id="create" (click)="convert()">Create file</button> 
    </div>


 convert(){
      const elementToPrint = document.getElementById('div1');
      console.log('eelementToPrint',elementToPrint); //The html element to become a pdf
      const pdf = new jsPDF('p', 'pt', 'a4');
      pdf.addHTML(elementToPrint, () => {
          doc.save('web.pdf');
      });
}

2 个答案:

答案 0 :(得分:0)

您指的是doc.save()

中不存在的变量

您应该参考文档,其中说不推荐使用addHTML,您应该使用html2pdf库。

http://rawgit.com/MrRio/jsPDF/master/docs/global.html#addHTML

https://github.com/spipu/html2pdf

答案 1 :(得分:0)

首先,

pdf.save('web.pdf');

并且你应该记住,如果你决定使用它,这个函数不支持css。