サーバー上の画像を含むキャンバスの状態を保存し、後の段階で状態を取得しようとしています。KineticJS ライブラリを使用しています。stage.toJSON() を使用して状態を保存し、stage2.load() を使用して再作成していますが、stage.toJSON から作成された結果の JSON には画像に関連するデータが含まれておらず、その後、stage2 には画像を除くすべての形状があります。未定義。
jsonに画像データを含めるには、他に何かする必要がありますか?
サーバー上の画像を含むキャンバスの状態を保存し、後の段階で状態を取得しようとしています。KineticJS ライブラリを使用しています。stage.toJSON() を使用して状態を保存し、stage2.load() を使用して再作成していますが、stage.toJSON から作成された結果の JSON には画像に関連するデータが含まれておらず、その後、stage2 には画像を除くすべての形状があります。未定義。
jsonに画像データを含めるには、他に何かする必要がありますか?
toJSON() によって生成された JSON には、画像オブジェクトのプレースホルダーがあります。画像自体はその json 文字列の一部ではありません。私が理解していることから、画像の保存と復元を個別に管理する必要があります。この例を参照してください
http://www.html5canvastutorials.com/kineticjs/html5-canvas-load-complex-stage-with-kineticjs/
要するに、すべてをロードし、レンダリングされたデータから画像のプレースホルダーを取得し、画像を設定します。
同様の問題がありました..
JSON は画像をロードしないため、それらを再度呼び出す必要があります..セキュリティの問題などの原因となります..
ただし、画像ローダー関数内に src 属性を 1 つ追加できます...
stage.load(json) を使用してステージをリロードします
このjsフィドルを試してみてください..これは間違いなく役立ちます: http://jsfiddle.net/sKymY/
よろしく