如何将System.Drawing.Icon转换为System.Drawing.Image?

50

我正在使用以下代码从另一个应用程序获取图标:

Icon IEIcon =  Icon.ExtractAssociatedIcon(@"C:\Program Files\Internet Explorer\iexplore.exe");

如何将其转换为System.Drawing.Image

5个回答

88

描述

Bitmap 是从 Image 派生的,因此您可以使用 Icon 的 .ToBitmap() 方法。

示例

Icon IEIcon = Icon.ExtractAssociatedIcon(@"C:\Program Files\Internet Explorer\iexplore.exe");
Image im = IEIcon.ToBitmap();

更多信息


我不知道这个“cast”是可能的。谢谢。 - The Mask
+1 @TheMask - 谢谢,我早在一百万年前就知道了 - 今天省了我一点工夫! - John Faulkner

11

您可以使用ToBitmap()方法。

ToBitmap()方法是将图标转换为位图的方法。


6

对于想要执行相反操作的人:(VB.NET;myImage->myIcon)

Dim tmpBmp As Bitmap
tmpBmp = myImage
Dim hIcon As IntPtr = tmpBmp.GetHicon
myIcon = Icon.FromHandle(hIcon)

我在这里写下这篇文章,因为通过谷歌搜索 "System.Drawing.Image' converted to 'System.Drawing.Icon" 就会带您到这里,我认为这并不需要一个新的问题。

4

Original at : Convert Icon to Image in C#

Icon a =  Icon.ExtractAssociatedIcon(@"C:\Program Files\Internet Explorer\iexplore.exe");

Image im = a.ToBitmap()

3
非常简单。Icon类有一个名为ToBitmap的方法。
Image converted_image = Icon.ExtractAssociatedIcon(@"C:\Program Files\Internet Explorer\iexplore.exe").ToBitmap()

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接