如何从 .NET 中的图标文件中提取特定图像?

发布于 2024-11-07 19:10:37 字数 236 浏览 3 评论 0原文

图标文件 (*.ico) 可能包含多个不同大小和不同颜色深度的图像。

如何从 .ico 文件获取 System.Drawing.Image 对象?

一种选择是 Image.FromFile(...),但对于具有多个图像的图标文件,无法指定要返回的图像大小和颜色深度。

理想情况下,该解决方案将仅使用托管代码,但我也很高兴听到对 Win32 函数的互操作调用。

Icon files (*.ico) may contain multiple images at different sizes and of different colour depths.

How can I obtain a System.Drawing.Image object from a .ico file?

One option is Image.FromFile(...), but for icon files with multiple images there is no way to specify which image size and colour depth to return.

Ideally the solution would use only managed code, but I'm happy to hear about interop calls to Win32 functions as well.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

苍白女子 2024-11-14 19:10:37

简单回答您的所有问题:IconLib

Simple answer to all your questions: IconLib

掩耳倾听 2024-11-14 19:10:37

System.Drawing.Icon可以从文件加载指定尺寸。不过我不知道深度。
http://msdn.microsoft.com/en-us/library/ms142130。 ASPX

System.Drawing.Icon can load a specified size from a file. I don't know about depth, though.
http://msdn.microsoft.com/en-us/library/ms142130.aspx

橘味果▽酱 2024-11-14 19:10:37

您将需要使用

Dim icon As System.Drawing.Icon
icon = icon.FromHandle(hIcon)

在 hIcon 结构中,您可以指定颜色深度

此链接将引导您走向正确的方向:

You will need to use

Dim icon As System.Drawing.Icon
icon = icon.FromHandle(hIcon)

In the hIcon structure you can specify the color depth

This links will guide you in the right direction:

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文