我编写了c#windows程序,用于将所有图像转换为.ico文件。但.ico仅适用于favicon而不适用于文件夹图像
这是我的代码
Image theImage = Image.FromFile(textBox1.Text);
Bitmap theBitmap = new Bitmap(theImage, new Size(width, height));
第二行用于将图像转换为.ico文件。
有人知道如何解决这个问题吗?
答案 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);