图标文件 (*.ico) 可能包含多个不同大小和不同颜色深度的图像。
如何System.Drawing.Image
从.ico
文件中获取对象?
一种选择是Image.FromFile(...)
,但对于具有多个图像的图标文件,无法指定要返回的图像大小和颜色深度。
理想情况下,该解决方案将仅使用托管代码,但我也很高兴听到有关 Win32 函数的互操作调用。
简单回答您的所有问题:IconLib
System.Drawing.Icon 可以从文件加载指定大小。不过,我不知道深度。 http://msdn.microsoft.com/en-us/library/ms142130.aspx
您将需要使用
Dim icon As System.Drawing.Icon
icon = icon.FromHandle(hIcon)
在 hIcon 结构中,您可以指定颜色深度
此链接将引导您朝着正确的方向前进: