2012-09-14 22 views
2

我試圖保存涉及服務器上的圖像的畫布狀態,然後在稍後階段檢索狀態。我正在使用KineticJS庫。 我通過使用stage.toJSON()來保存狀態,然後使用stage2.load()重新創建它,但是從stage.toJSON創建的結果JSON並不包含與圖像有關的任何數據,隨後stage2具有除圖像之外的所有形狀未定義。無法從保存的KineticJS畫布狀態檢索圖像屬性

還應該做些什麼使json包含圖像數據?

回答

2

toJSON()生成的JSON具有圖像對象的佔位符..圖像本身不是該json字符串的一部分..根據我的理解,您需要分別管理圖像的保存和還原。看到這個例子

http://www.html5canvastutorials.com/kineticjs/html5-canvas-load-complex-stage-with-kineticjs/

在本質上,加載了一切,從呈現的數據得到的佔位符的保持圖像和設置你的形象。

+1

OK,還有一兩件事。雖然最初創建圖像(之前的toJSON),請確保您設置的「身份證」屬性的Kinetic.Image ..這將導致toJSON'ified串有加載時可以使用的'id'集。 – t3chi3

0

我有一個類似的問題..

JSON不加載圖片,你就會有給他們打電話again..cause的安全問題和所有..

但你可以添加一個SRC屬性圖像裝載函數裏面......

,並使用stage.load(JSON)

試試這個js小提琴重裝階段.. 這一定會幫助: http://jsfiddle.net/sKymY/

問候