【发布时间】:2019-07-29 07:56:13
【问题描述】:
我正在尝试使用 html2canvas 生成 PDF,但是在调用该函数时抛出错误,我的 TS 如下:
@ViewChild('content') content:ElementRef;
generarPDF() {
html2canvas(document.getElementById('content'), {
// Opciones
allowTaint: true,
useCORS: false,
// Calidad del PDF
scale: 1
}).then(function(canvas) {
var img = canvas.toDataURL("image/png");
var doc = new jsPDF();
doc.addImage(img,'PNG',7, 20, 195, 105);
doc.save('postres.pdf');
});
}
我的html是:
div.cliente {
border-bottom: 2px dotted;
width: 70%;
float: left;
}
div.fecha {
border-bottom: 2px dotted;
width: 28%;
float: right;
}
ul.satisfacion {
float: left;
margin-top: 28px;
}
<div #content id="content">
<div class="contenido-pdf">
<div class="cliente">
<span>Cliente: </span>
<div class="campo"></div>
</div>
<div class="fecha">
<span>Fecha: </span>
<div class="campo"></div>
</div>
<ul class="satisfacion">
<li>El servicio es muy satisfactorio</li>
<li>El servicio es satisfactorio</li>
<li>El servico es normal</li>
<li>El servicio no es satisfactorio</li>
</ul>
</div>
</div>
<button mat-raised-button (click)="generarPDF()" id="donwloadpdf">
DESCARGAR CARTA DE CONFORMIDAD
</button>
我的错误
ERROR Error: "Uncaught (in promise): Error: Supplied Data is not a valid base64-String jsPDF.convertStringToImageData
e.convertStringToImageData
当我要单击生成 pdf 时,它不会生成它或执行任何操作,它只会在我的控制台上抛出该错误,我已经尝试使用 jsPDF 生成它,但问题是它不保留样式
【问题讨论】:
-
你用的是什么版本的jspdf和html2canvas?
标签: angular jspdf html2canvas