Angular6 为什么jspdf不适用于移动web应用程序

Angular6 为什么jspdf不适用于移动web应用程序,angular6,jspdf,Angular6,Jspdf,角度版本7,jspdf 1.5.3 我用angular7开发了一个网络应用程序,它也可以在移动浏览器中使用。在点击按钮时,我正在使用jspdf生成pdf,但它不适用于任何移动版本。用各种可能的方法试过了。我在移动it中调试的警报请帮助我 <button (click)="generatePDF()" class='btn btn-primary pdf'><i class="far fa-file-pdf"></i>Generate PDF</butto

角度版本7,jspdf 1.5.3

我用angular7开发了一个网络应用程序,它也可以在移动浏览器中使用。在点击按钮时,我正在使用jspdf生成pdf,但它不适用于任何移动版本。用各种可能的方法试过了。我在移动it中调试的警报请帮助我

<button (click)="generatePDF()" class='btn btn-primary pdf'><i class="far fa-file-pdf"></i>Generate PDF</button>



public generatePDF() {
    var data = document.getElementById('contentToConvert');
    var data_width = document.getElementById('contentToConvert').clientWidth;
    html2canvas(document.querySelector('#contentToConvert')).
        then(canvas => {
            var imgWidth = data_width;
            var imgHeight = canvas.height * imgWidth / canvas.width;
            const contentDataURL = canvas.toDataURL('image/jpg', 0.5);
            let pdf = new jspdf('p', 'pt', [imgWidth + 10, imgHeight + 10], true);
            pdf.addImage(contentDataURL, 'PNG', 5, 5, imgWidth, imgHeight, undefined, 'FAST');
            let mydate = new Date()
            let month = mydate.getUTCMonth() + 1;
            let formatedDate = mydate.getUTCDate() + "_" + month + "_" + mydate.getFullYear();
            let fileName = formatedDate + '_' + 'Calendario_' + 'Darzalex_' + this._pdetails.Tratamientos
            pdf.save(fileName + ".pdf");
        });
}

这里您正在转换为jpeg:

在这里,您将添加图像,就像它是PNG一样:


如果你仍然有问题,我建议发布更多关于你得到的结果的细节。如果图像没有显示,那么我认为将图像格式置于所有JPEG或所有PNG之上可能会修复它。如果文件未保存,请查看filesaver.js或应用程序的上下文。

调用转换后,contentDataURL是否包含任何内容?
        const contentDataURL = canvas.toDataURL('image/jpg', 0.5);
        pdf.addImage(contentDataURL, 'PNG', 5, 5, imgWidth, imgHeight, undefined, 'FAST');