【问题标题】:Property 'toDataURL' does not exist on type 'HTMLElement'“HTMLElement”类型上不存在属性“toDataURL”
【发布时间】:2017-08-08 13:58:54
【问题描述】:

您好,我是 TypeScript 的新手。我正在尝试使用 JSBarcode 在画布中生成条形码,并使用 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);
}

【问题讨论】:

    标签: angular typescript ionic2


    【解决方案1】:

    投给HTMLCanvasElement:

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

    如果您使用的是 TypeScript 版本

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

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

    【讨论】:

      猜你喜欢
      • 2022-01-13
      • 2021-12-15
      • 2019-09-16
      • 2018-10-19
      • 2019-11-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多