2009-11-16 29 views
1

在一個aspx頁面中你有一個<image>控件,等待被「喂」一個圖像。 在該頁面的代碼隱藏中,您有(它只是在那裏,它不相關)如何獲得表示圖像的字節數組。我想要圖像控件(或您建議的任何替代方法)來呈現該數組中表示的圖片。怎麼樣?代碼示例?提煉我以前的「bytearray圖像asp.net」問題

+2

你可能想要選擇一個更合適的標題。 – Heinzi 2009-11-16 08:52:27

回答

0

將字節數組寫入磁盤或數據庫。在圖像控件的源代碼中,將一個HTTP處理程序(請參閱your "bytearray to image asp.net" question的答案)與一些包含信息的查詢字符串進行比較,這些信息允許您檢索文件或數據庫行。

+0

因此,它必須始終是我「餵食」圖像的鏈接? – user181218 2009-11-16 07:56:01

+0

是的,這就是HTML的標籤的工作原理。 – Heinzi 2009-11-16 07:58:01

+0

在圖片中嵌入圖片是不可能的。瀏覽器將始終發送兩個單獨的請求。 – Pete 2009-11-16 08:00:40

1

您可以使用canvas標籤,並使其跨瀏覽器,你可以看看excanvas項目,在http://code.google.com/p/explorercanvas/

在此頁面,您可以看一下部分有關通過數據嵌入的圖像:網址,因爲這可能是你正在尋找的東西。 https://developer.mozilla.org/En/Canvas_tutorial/Using_images

+0

好主意。但是請注意,Internet Explorer不支持數據url <= 7。IE8支持它,但僅適用於最大32KB的數據,請參閱http://en.wikipedia.org/wiki/Data:_URL – Heinzi 2009-11-16 08:28:14

+0

@Heinzi - Most gifs應該在32k以下,但我試圖展示一個替代品,因爲這似乎是期望的。這並不完美,但可能會滿足他的需求。 – 2009-11-16 08:33:43

+0

@詹姆斯:當然,我明白這一點。 +1,順便說一句,因爲我完全忘記了數據:url。 :-) – Heinzi 2009-11-16 08:51:56

0

控件無法真正呈現圖像本身。控件通常會呈現插入到包含頁面的HTML中的文本。

要動態生成字節數組中的圖像,應該使用HttpHandler。 Handler可以簡單地使用Response.Write()將字節寫入輸出流,然後將內容類型設置爲適當的MIME類型。

你通常會決定哪個圖像根據傳遞給你的處理程序的查詢字符串中的參數來創建。

通用處理程序(.ashx文件)是一種簡單的方法。