角版本7,jspdf 1.5.3
我开发了一个使用angular7的webapp应用程序,它也可以在移动浏览器中使用。在按钮点击我生成的pdf使用jspdf,但它不工作的任何移动版本。以各种可能的方式尝试。我以前经常在手机上调试,请帮我处理一下
<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");
});
}发布于 2019-06-03 12:38:02
在这里,您将转换为jpeg:
const contentDataURL = canvas.toDataURL('image/jpg', 0.5);
在这里,您添加的图像就好像它是一个PNG:
pdf.addImage(contentDataURL, 'PNG', 5, 5, imgWidth, imgHeight, undefined, 'FAST');
如果你仍然有问题,我建议张贴更多的细节,你正在得到的结果。如果图像没有显示,那么我认为调整上面的图像格式(所有JPEG或所有PNG)可能会修复它。如果没有保存该文件,请查看filesaver.js或应用程序的上下文。
https://stackoverflow.com/questions/55488575
复制相似问题