web-dev-qa-db-ja.com

チャートjsを使用してチャートを印刷する

Chart JSライブラリを使用してチャートを作成しています https://www.chartjs.org/

以下のコードがあるとしましょう

 <div class="card-body ">
        <canvas id="bidStatus"></canvas>
  </div>

FileSaver.jsを使用して、以下のコードを使用してグラフを保存できます

function DownloadImage() {
    $("#bidStatus").get(0).toBlob(function (blob) {
        saveAs(blob, "BidStatus.png");
    });
}

しかし、チャートを印刷する方法がわかりません。それを行うためのネイティブAPI呼び出しは表示されません。誰かが私がこれを達成する方法を教えてもらえますか?.

Print a HTMl要素の例に記載されているjquery印刷ライブラリを使用してみましたが、Chartjsを使用して生成されたグラフが読み込まれないようです。印刷用の空白ページが表示されます。

ありがとう

3
SP1

この関数は、Canvasの内容を正しく印刷します

function PrintImage() {
    var canvas = document.getElementById("bidStatus");
    var win = window.open();
    win.document.write("<br><img src='" + canvas.toDataURL() + "'/>");
    win.print();
    win.location.reload();

}
1
user1221989