内存转换Image到Icon格式
来源:互联网 发布:下载视频软件 知乎 编辑:程序博客网 时间:2024/06/08 04:38
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
根据经验,通常我们应该可以这样做
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);//这种方式将报错
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
有时候我们需要在内存中转换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);//这种方式将报错
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
- 内存转换Image到Icon格式
- 内存转换Image到Icon格式
- 内存转换Image到Icon格式
- 内存转换Image到Icon
- 把Swing的Icon转换到SWT的Image
- 将图片转换为ICON格式
- 内存中读取到的时间格式转换(CST格式的时间转换)
- GDI+实例教程之: 转换Image(BMP,JPG,GIF,PNG等) 到MetaFile(EMF等) 格式
- IOS 保存Image图片到Documents目录及PNG,JPEG格式相互转换
- ionic2 svg格式icon不显示,报错: Refused to load the image 'data:image/svg
- Icon and Image Sizes
- Icon and Image Sizes
- Image 对象 转成 Icon
- Icon and Image Sizes
- Icon, ImageIcon & image
- wince5.0, eVC4.0下bmp到jpg格式转换,使用Imagefactory,两头都是Stream内存
- MapInfo格式到ArcInfo格式的转换
- 转换证书DER格式到PEM格式
- 轮换广告
- 导入文本文件时如何指定字段类型?(二)
- 如何在Access报表中每隔N行显示一条粗线
- C# 2.0 Specification(泛型五)
- Access中如何用 Jet SQL 语句删除表关系?
- 内存转换Image到Icon格式
- Access中如何设定鼠标指针?
- ASP.NET中的错误处理支持(转)
- Oracle 10G的Data Pump (Part I)
- C# 2.0 Specification (泛型四)
- 用 Access 分析网站一例
- 让Asp.Net输出图形
- 如何使Microsoft SQL Server的日志文件不会增大
- VB.NET:又将是个跨越十年的美丽...