您好我是TypeScript的新手。我正在尝试使用JSBarcode在canvas中生成条形码,并使用addImage
将其作为图像添加到JSpdf。但是我收到了上述错误。
这是我的HTML代码。通过单击生成按钮,它已创建条形码。但是当我将我的html转换为PDF时,它会出现上述错误。
<canvas id="barcode"></canvas>
<a id="download" download="barcode.png" (click)='Generate();'>Generate</a>
<button (click)='Generatepdf();'>PDF</button>
private Generate(): void {
JsBarcode("#barcode", "12345", {
width: 2,
height: 25
});
}
Generatepdf()
{
var pdf = new jsPDF('p', 'pt', 'letter');
let canvas =document.getElementById('barcode');
console.log(canvas);
let dataURL = canvas.toDataURL("image/jpeg");
pdf.addImage(dataURL, 'JPEG', 15, 40, 180, 160);
function (dispose) {
pdf.output('datauri');
}, margins);
}
答案 0 :(得分:12)
将其投放到HTMLCanvasElement
:
let canvas = document.getElementById('barcode') as HTMLCanvasElement;
如果您使用的是TypeScript版本&lt; 1.6:
let canvas = <HTMLCanvasElement> document.getElementById('barcode');
现在您可以访问toDataURL
方法。