图像到图标转换

Zai*_*Ali 3 c# icons windows-xp image visual-studio-2010

我使用以下代码将图像转换为Icon.这是我的代码.

Bitmap Cbitmap=null;
  try
  {
  Cbitmap = new Bitmap("path of local image"); 
  }
  catch(Exception)
  {
  return;
  }
  Cbitmap.MakeTransparent(Color.White);
  System.IntPtr icH = Cbitmap.GetHicon();
  Icon ico = Icon.FromHandle(icH);
  Cbitmap.Dispose();
  System.IO.FileStream f = new System.IO.FileStream(Path where to save icon"" + "\\image.ico", System.IO.FileMode.OpenOrCreate);
  ico.Save(f);
   f.close();
  ico.dispose();
Run Code Online (Sandbox Code Playgroud)

现在这已成功转换为Icon但当我尝试在图像查看器中打开它时,它显示预览不可用.

此外,当试图在项目中打开它时,它说

(image.ico不是图标文件)

Joe*_*yle 5

你的代码很好.它将JPG转换为Icon.原始JPG的尺寸是多少?如果它们不是标准图标大小之一,您将会遇到奇怪的行为.如果原始JPG太大,您将收到您所看到的错误.

一些更常见的尺寸是16x16,24x24,32x32,48x48.