- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:javascriptで困っています。教えてください)
JavaScriptでcanvasに描画した画像を保存・読み込みする方法
このQ&Aのポイント
- JavaScriptのcanvasで描いた画像を保存して、読み込む方法について教えてください。
- canvas.toDataURL()で画像データを取得し、LocalStorageに保存することはできていますが、その後Canvasに描画できない問題が発生しています。
- どのようにすれば保存した画像を読み込んでCanvasに描画できるのでしょうか?
- みんなの回答 (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
その他の回答 (1)
- 神崎 渉瑠(@taloo)
- ベストアンサー率44% (1016/2280)
回答No.1
Safariにて、localStorageに保存した画像データをImage()で表示できなくなるという現象を確認しています。 私のケースではFirefox24では期待通り表示されますが、 他のブラウザではどうでしょうか。 なお、localStorageに保存せずに、canvasからImage()に、そのImage()をあらためてcanvasに描画すると、期待通り動作する事は確認しています。 ブラウザのバグなら何か別のフォーマット(独自フォーマット)にエンコードしてlocalStorageに保存、表示時はbase64にデコードして使用とすればいけるかもしれませんが、その方法は試していません。 ご参考まで。
質問者
お礼
情報ありがとうございます。参考にさせていただきます。
お礼
ありがとうございます。コンテキストの取得で間違いがありました。参考になりました。