VueJS PDF转换器

时间:2018-01-26 16:18:53

标签: javascript pdf vuejs2 html-to-pdf

我遇到的问题是我想将我的Vue HTML转换为pdf并将其下载给用户。我尝试过使用JSPDF

但它会下载一个空白页面。当我只传递文本时它会下载。

var doc = new jsPDF();

// All units are in the set measurement for the document
// This can be changed to "pt" (points), "mm" (Default), "cm", "in"
setTimeout(function () {
doc.fromHTML(document.getElementById('profile'), 15, 15, {
'width': 170
});

doc.save('two-by-four.pdf')
} , 6000);

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

在打印结果之前,尝试使用canvas在base 64中转换html页面的内容。这是我自己的功能,使用画布打印

printFacture() {
    var pdf = new jsPDF();
    var element = document.getElementById('facture');
    var width= element.style.width;
    var height = element.style.height;
    html2canvas(element).then(canvas => {
        var image = canvas.toDataURL('image/png');
        pdf.addImage(image, 'JPEG', 15, 40, width, height);
        pdf.save('facture' + moment(this.facture.date_debut).format('LL') + '_' + moment(this.facture.date_fin).format('LL') + '.pdf';
    });
}
希望它会对你有所帮助。

答案 1 :(得分:0)

createPDF () {
    let pdfName = 'mes-enfants'; 
    var doc = new jsPDF();

    doc.fromHTML(document.getElementById('print'), 15, 15, {
      'width': 170
    });

    doc.save(pdfName + '.pdf');
}