.ico图像不适合Windows操作系统中的文件夹图像?

时间:2013-06-20 07:29:03

标签: c# bitmap

我编写了c#windows程序,用于将所有图像转换为.ico文件。但.ico仅适用于favicon而不适用于文件夹图像

这是我的代码

Image theImage = Image.FromFile(textBox1.Text);
Bitmap theBitmap = new Bitmap(theImage, new Size(width, height));

第二行用于将图像转换为.ico文件。

有人知道如何解决这个问题吗?

3 个答案:

答案 0 :(得分:1)

请检查https://stackoverflow.com/a/3215441/361100链接以创建多个ico文件。

帖子引导您前往http://www.vbforums.com/showthread.php?396650-Create-Valid-Icon-Files!-In-24-bit-true-color!链接,我似乎运作良好。

我会删除错误指向的帖子以将ico应用到文件夹。

- 删除 -

答案 1 :(得分:1)

简而言之,您需要包含大小为16x16,32x32和48x48的图标,GetHicon在创建32位图标时不是很擅长。只要您只需要32位图标,就可以使用FreeImage创建多资源图标。

请在此处查看我对相关问题的回答以获取代码示例: Convert image to icon in c#

答案 2 :(得分:-2)

此代码可以使用:

Bitmap theBitmap = new Bitmap(theImage, new Size(width, height));
IntPtr Hicon = theBitmap.GetHicon();// Get an Hicon for myBitmap.
Icon newIcon = Icon.FromHandle(Hicon);// Create a new icon from the handle.

然后,如果你想保存它,请执行以下操作:

FileStream fs = new FileStream(@"c:\Icon\" + filename + ".ico", FileMode.OpenOrCreate);//Write Icon to File Stream
 newIcon.Save(fs);