2011-06-23 48 views
1

我正在設計一個服務器端應用程序,該應用程序從用戶處獲取圖像並對其進行處理,然後通過網絡將其發回。由於網絡連接速度可能非常慢,我希望通過開始處理部分圖像來加快速度,同時仍然通過網絡發送圖像,並將部分處理後的圖像發送回客戶端,而其他部分仍然保留正在處理。Java - 閱讀時的過程映像

這是可能的,最好是使用javax.imageio類?

編輯:我最感興趣PNG文件。維基百科says:「IDAT包含圖像,它可以在多個IDAT塊之間被拆分否則會增加文件大小略有下降,但能夠產生以流的方式PNG。」

+0

完全取決於處理的內容... –

+0

您可以在使用javascript上傳之前調整圖像大小。 Plupload具有此功能。 – jontro

+0

@Mitch小麥:爲什麼? – ryyst

回答

2

這在很大程度上取決於編碼的形象。某些圖像格式要求整個文件在解碼之前都可用。其他 - 像GIF和一些PNG編碼(據我記憶)解碼到可以被處理的各個塊。

您很可能需要編寫自定義解碼器,如果您對格式不熟悉並且需要支持多種格式,這可能會有相當多的工作量。

我想你或許應該在上傳欄上工作呢?

+0

據我所知,我只需要支持PNG編碼。如果我想要寫圖像,我必須讓整個圖像開始寫入磁盤嗎? – ryyst

+0

取決於您的編碼。我建議你仔細研究一下格式,看看你能做什麼,而不是做什麼:http://www.libpng.org/pub/png/book/ –