相关疑难解决方法(0)

如何将Bitmap保存为图标?

我需要保存从图像文件(.png,.jpeg,.bmp)加载的Bitmap对象,并将其保存为图标(.ico)到单独的文件.

首先,我尝试使用Icon ImageFormat将Bitmap对象保存到文件中:

using System.Drawing;

Bitmap bmp = (Bitmap)pictureBox1.Image;
bmp.Save(@"C:\icon.ico", Imaging.ImageFormat.Icon);
Run Code Online (Sandbox Code Playgroud)

这个失败了,因为生成的图标格式不正确,不能用作图标.

接下来是从Bitmap获取HIcon并将其保存到文件中:

using System.Drawing;
using System.IO;

StreamWriter iconWriter = new StreamWriter(@"C:\icon.ico");
Icon ico = Icon.FromHandle(((Bitmap)pictureBox1.Image).GetHicon())
ico.Save(iconWriter.BaseStream);
iconWriter.Close();
iconWriter.Dispose();
Run Code Online (Sandbox Code Playgroud)

这个也不起作用.尽管图标文件已正确写入,但它只有16种颜色且宽度和高度有限.

我希望能够编写具有自定义宽度和高度的图标,以保留原始图像的颜色.这有可能在.NET中实现吗?

提前致谢.

.net c# vb.net icons bitmap

5
推荐指数
1
解决办法
9395
查看次数

标签 统计

.net ×1

bitmap ×1

c# ×1

icons ×1

vb.net ×1