2009-09-28 87 views
4

是否有可能將圖像存儲在Flash中的SharedObject中?這將是很好,如果它能工作。我需要在本地「存儲」圖像,但它似乎不被Flash支持...所以我想把這些圖像放在一個可以保存的SharedObject中,但是它可以處理圖像嗎?是否可以將圖像存儲在Flash的SharedObject中?

我一個位圖嘗試過,但如果我想讀並將其添加到它說,對象不能被轉換爲位圖的舞臺......

var image:Bitmap = //some awesome image; 

sharedObject = SharedObject.getLocal("img"); 
sharedObject.data.img = image; 
sharedObject.flush(); 

錯誤的位置 - >

sharedObject = SharedObject.getLocal("img"); 
addChild(Bitmap(sharedObject.data.img)); 
+0

是否將文件以JPG或PNG格式保存出來?這些數據是否應該在視線之外?如果您使用Flash Player 10,則flash.net.FileReference類可以爲您提供幫助。準備好將bitmapData的ByteArray寫入磁盤時使用save()方法將允許您將副本保存到磁盤。 – 2009-09-28 17:36:22

回答

10

在這種情況下,您需要在設置共享對象之前將Bitmap寫入ByteArray(換句話說 - 二進制數據)。然後,當您檢索它時,您需要將它從ByteArray讀取到位圖中。這裏是一個快速樣品希望將讓你在正確的方向前進:

http://www.kirupa.com/forum/showthread.php?t=306972

+0

嗯這是有點慢,但它的作品^^不錯!謝謝! – Hank 2009-09-28 14:27:37

+0

它也不值得你實際上不必編碼到jpeg這個工作,因爲你可以用BitmapData.getPixels()創建一個ByteArray ...雖然我一直無法使它工作100%應該是理論上可行的 – Daniel 2010-06-02 22:44:38

3

唐`忘記,共享對象具有有限的大小(默認情況下在100Kb)

+0

它也創造了我稱之爲用戶可怕的經歷,出現令人困惑的Flash Player對話框,彈出要求增加本地存儲的權限。 – 2009-09-28 15:37:21

+0

它不是真的,它有100kb的限制。它具有100kb的默認限制,可以通過上述混淆彈出來增加。 – Tom 2011-07-20 00:46:32

相關問題