gpt4 book ai didi

angular - 类型 'toDataURL' 上不存在属性 'HTMLElement'

转载 作者:太空狗 更新时间:2023-10-29 17:23:12 25 4
gpt4 key购买 nike

大家好,我是 TypeScript 的新手。我正在尝试使用 JSBarcode 在 Canvas 中生成条形码,并使用 addImage 将其作为图像添加到 JSpdf。但我收到上述错误。

条码.html

这是我的 html 代码。通过单击生成按钮,它已创建条形码。但是当我将我的 html 转换为 PDF 时,它会出现上述错误。

<canvas id="barcode"></canvas>
<a id="download" download="barcode.png" (click)='Generate();'>Generate</a>
<button (click)='Generatepdf();'>PDF</button>

条码.ts

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);
}

最佳答案

将其转换为 HTMLCanvasElement:

let canvas = document.getElementById('barcode') as HTMLCanvasElement;

如果您使用的是 TypeScript 版本 < 1.6:

let canvas = <HTMLCanvasElement> document.getElementById('barcode');

现在您将可以访问 toDataURL 方法。

关于angular - 类型 'toDataURL' 上不存在属性 'HTMLElement',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42850260/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com