JavaScriptでCanvasを画像に変換する方法


  1. toDataURL()メソッドを使用する方法:

    const canvas = document.getElementById('myCanvas');
    const dataURL = canvas.toDataURL(); // デフォルトのMIMEタイプは'image/png'
    // 画像を表示
    const img = document.createElement('img');
    img.src = dataURL;
    document.body.appendChild(img);
  2. toBlob()メソッドを使用する方法:

    const canvas = document.getElementById('myCanvas');
    canvas.toBlob(function(blob) {
    // Blobオブジェクトをファイルとしてダウンロードするためのリンクを作成
    const link = document.createElement('a');
    link.href = URL.createObjectURL(blob);
    link.download = 'canvas_image.png'; // ダウンロード時のファイル名
    link.click();
    });
  3. HTMLCanvasElementのtoImageBitmap()メソッドを使用する方法:

    const canvas = document.getElementById('myCanvas');
    canvas.toBlob().then(function(blob) {
    return createImageBitmap(blob);
    }).then(function(imageBitmap) {
    // ImageBitmapを表示
    const img = document.createElement('img');
    img.src = URL.createObjectURL(imageBitmap);
    document.body.appendChild(img);
    });

これらの方法を使用することで、JavaScriptのCanvas要素を画像に変換することができます。それぞれの方法には異なる利点と制約がありますので、使用環境や要件に応じて適切な方法を選択してください。また、上記のコード例はデフォルトでPNG形式の画像を生成しますが、必要に応じてMIMEタイプやファイル名を変更することも可能です。

以上が、「JavaScriptでCanvasを画像に変換する方法」に関するコード例と解説です。