图像到图标的转换
我正在使用以下代码将图像转换为图标。 这是我的代码。
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();
现在,它已成功转换为图标,但当我尝试在图像查看器中打开它时,它显示预览不可用。
此外,当尝试在项目中打开它时,它会显示
(image.ico 不是)图标文件)
I am using following code to convert an image to Icon.
Here is my code.
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();
Now this is converted to Icon successfully but when I try to open it in image viewer it shows preview not available.
Also when to try to open it in project it says
(image.ico is not an icon file)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你的代码没问题。它将 JPG 转换为 Icon。您的原始 JPG 尺寸是多少?如果它们不是标准图标尺寸之一,您会得到奇怪的行为。如果原始 JPG 太大,您将收到所看到的错误。
一些更常见的尺寸有 16x16、24x24、32x32、48x48。
Your code is fine. It converts a JPG to an Icon. What's the dimensions of your original JPG? If they aren't one of the standard icon sizes, you'll get a strange behavior. If the original JPG is too large, you'll get the error you are seeing.
Some of the more common sizes are 16x16, 24x24, 32x32, 48x48.