• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:javascriptで困っています。教えてください)

JavaScriptでcanvasに描画した画像を保存・読み込みする方法

このQ&Aのポイント
  • JavaScriptのcanvasで描いた画像を保存して、読み込む方法について教えてください。
  • canvas.toDataURL()で画像データを取得し、LocalStorageに保存することはできていますが、その後Canvasに描画できない問題が発生しています。
  • どのようにすれば保存した画像を読み込んでCanvasに描画できるのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.2

dataStorageって使ったことがないので、わからないのですが… これでもだめでしょうか? (全角空白は半角にしてください) Fxで動作確認 $("#load_button").click(function () {  var base64 = window.localStorage.getItem("saveKey");  var image = new Image();  image.onload = function(){  //念のため順序を入替え // canvas.drawImage(image, 0, 0);  //以下に変更   canvas.getContext('2d').drawImage(image, 0, 0); //←変更  }  image.src = base64; }); [ 参考 ] http://www.html5.jp/canvas/ref.html

dkong
質問者

お礼

ありがとうございます。コンテキストの取得で間違いがありました。参考になりました。

その他の回答 (1)

回答No.1

Safariにて、localStorageに保存した画像データをImage()で表示できなくなるという現象を確認しています。 私のケースではFirefox24では期待通り表示されますが、 他のブラウザではどうでしょうか。 なお、localStorageに保存せずに、canvasからImage()に、そのImage()をあらためてcanvasに描画すると、期待通り動作する事は確認しています。 ブラウザのバグなら何か別のフォーマット(独自フォーマット)にエンコードしてlocalStorageに保存、表示時はbase64にデコードして使用とすればいけるかもしれませんが、その方法は試していません。 ご参考まで。

dkong
質問者

お礼

情報ありがとうございます。参考にさせていただきます。

関連するQ&A