時候我們需要在內存中轉換Image格式到Icon
根據經驗
通常我們應該可以這樣做
Image image = xxxx;///假設這裡已經有一個Image對象
System
IO
MemoryStream mStream = new System
IO
MemoryStream()
///創建內存流
image
Save(mStream
System
Drawing
Imaging
ImageFormat
Icon)
Icon icon = Icon
FromHandle(new Bitmap(mStream)
GetHicon())
mStream
Close()
但這裡在image
Save的時候會報告錯誤
空對象引用
於是我改變保存的格式為Bitmap
Jpeg等
這樣就沒有錯誤了(說明不能在內存中直接保存為Icon格式)
但是這樣的話
取得的Icon將會去掉原圖片中的透明信息
一個個格式的試驗我們可以發現保存為Gif格式的時候
還可以保留透明信息
哈哈
終於找到
但這裡
還有值得注意的就是
在成功取得內存流後
不能直接用Icon構造
一定要用Bitmap轉
否則也會報錯
Icon icon = new Icon(mStream)
//這種方式將報錯
From:http://tw.wingwit.com/Article/program/net/201311/12875.html