Estoy tratando de convertir una imagen de Bitmap
a un ícono de Windows. Este es el código.Conversión de mapa de bits en el icono
private void btnCnvrtSave_Click(object sender, EventArgs e)
{
Bitmap bmp = (Bitmap)picturePanel.BackgroundImage;
Bitmap newBmp = new Bitmap(bmp);
Bitmap targetBmp = newBmp.Clone(new Rectangle(0, 0, newBmp.Width, newBmp.Height), PixelFormat.Format64bppArgb);
IntPtr Hicon = targetBmp.GetHicon();
Icon myIcon = Icon.FromHandle(Hicon);
SaveFileDialog sfd = new SaveFileDialog();
sfd.Title = "Save Icon";
sfd.Filter = "Icon|*.ico";
sfd.ShowDialog();
FileStream fileStream = new FileStream(sfd.FileName,FileMode.OpenOrCreate);
myIcon.Save(fileStream);
fileStream.Flush();
fileStream.Close();
MessageBox.Show("Image is converted successfully!");
}
El código está trabajando muy bien, pero el problema es, al convertir la imagen a un icono en el icono convertida pierde sus verdaderos colores y degradados (se muestra en la imagen). Entonces, ¿hay alguna forma de convertir la imagen sin perder sus colores?
Así es como se ve mi ícono.
que se parece a la paleta de colores básicos 4bpp. Sin embargo, no tengo idea de por qué lo hace. –
¿Qué tal crear un icono desde el mango? – danish
no sé cómo, vale, intentaré buscar en google.Si tiene algún enlace para un ejemplo ... proporcione. Gracias. – kakarott