为什么将包含 gif 的 Image 对象分配给 Bitmap 的新实例会破坏 gif
Why assigning an Image object containing gif to a new instance of Bitmap, breaks the gif
一个图像对象包含一个 gif 文件,如果保存到磁盘并打开,则 gif 可以正常显示。但是,如果从图像实例创建并保存 Bitmap 对象,则 gif 不再有效:
WebClient client = new WebClient();
client.DownloadFile(new Uri("http://www.ajaxload.info/images/exemples/25.gif"), "25.gif");
Image original = Image.FromFile("25.gif");
original.Save("25-WorksFine.gif", ImageFormat.Gif);
Bitmap bmp = new Bitmap(original);
bmp.Save("25-Broken.gif", ImageFormat.Gif);
Bitmap
不支持动画文件。
Image.FromFile 使用本机 GDI+ 使用适当的解码器加载文件
new Bitmap(Image) 创建图像大小的绘图表面(Graphics),然后使用 Graphics.DrawImage
在其上绘制图像
我想在最后一种情况下没有保留动画
一个图像对象包含一个 gif 文件,如果保存到磁盘并打开,则 gif 可以正常显示。但是,如果从图像实例创建并保存 Bitmap 对象,则 gif 不再有效:
WebClient client = new WebClient();
client.DownloadFile(new Uri("http://www.ajaxload.info/images/exemples/25.gif"), "25.gif");
Image original = Image.FromFile("25.gif");
original.Save("25-WorksFine.gif", ImageFormat.Gif);
Bitmap bmp = new Bitmap(original);
bmp.Save("25-Broken.gif", ImageFormat.Gif);
Bitmap
不支持动画文件。
Image.FromFile 使用本机 GDI+ 使用适当的解码器加载文件
new Bitmap(Image) 创建图像大小的绘图表面(Graphics),然后使用 Graphics.DrawImage
在其上绘制图像我想在最后一种情况下没有保留动画