2009-10-16 117 views
-1

我正在創建一個Flash對象,用於完成一些沉重的圖像提升。我期望做的是將許多Flash對象加載到同一頁面上以拍攝圖像,對其進行修改並將其顯示在Flash對象中。在不重新初始化的情況下在HTML中複製Flex對象

我遇到的問題是,當我嘗試向頁面添加100個彈性對象時,瀏覽器凍結,因爲它試圖重新加載/初始化每個實例。一旦它們全部加載完畢,圖像的處理就會快速進行。

有誰知道如何複製閃存片而無需重新加載所有內容?

我的另一個想法是將圖像加載到一個flex對象中,並使用MHTML/data URI修改圖像標記。有什麼想法嗎?

+0

這樣的CPU重量在服務器端比Flash更好。 – Amarghosh 2009-10-16 13:34:18

+0

我不同意這一點。在PHP/GraphicsMagick中執行類似的圖像功能比使用Pixel Bender的Flash版本需要更多的CPU和時間。此外,我正在做的並不是那麼緊張,因爲我正在使用Pixel Bender。 – DanO 2009-10-16 13:38:17

+0

然後使用一個,並顯示一些加載動畫,同時處理100個圖像。 – Amarghosh 2009-10-16 13:53:59

回答

1

我想出的答案是使用data URI scheme。我將圖像發送給單個閃存對象,讓它運行像素彎曲腳本,然後將Base64圖像字符串輸出到圖像標記上的數據URI。

對於IE,它不支持該方案,我會輸出字符串到一個PHP腳本,將返回解碼圖像。我爲此做了這麼多工作的原因是因爲Pixel Bender功能強大,並允許我將大量處理傳遞給客戶端。此外,在測試中,使用像素彎曲器應用所有圖像處理比在PHP/GraphicsMagick中處理速度快得多。

0

你不能,Flex必須初始化,這是一個可怕的可怕想法。

由於接口本身使用大量的CPU電源來繪製其接口效果,因此Flash的CPU佔用極高,Flex更加雙倍。

盡你所需,但不要初始化100個Flex SWF,除非你想要憤怒的用戶。

+0

我明顯知道這一點。這就是我在這裏問的原因。我不想初始化多個閃存對象,但是您不提供其他選擇,當然也不會回答這個問題...... – DanO 2009-10-16 13:36:34

+0

「有誰知道如何複製閃存片而不必重新加載所有內容?」 你問這個。我告訴過你。你做不到。我沒有看到問題。 你甚至可以解釋爲什麼你使用100 Flex SWF的,而不是隻加載100個圖像到相同的SWF? – 2009-10-16 13:39:41

+0

這是我想到的一個選擇,我可能最終不得不這樣做。我想在列表視圖中顯示它們,但列表視圖將爲HTML,並且人們將能夠編輯列表,所以我不想處理調整柔性對象的大小和編輯圖像內的圖像... – DanO 2009-10-16 13:42:35

相關問題