Squ*_*gs. 5 .net c# gif animated
我正在使用下面的内容从网上抓取动画gif.但是,在将其保存到磁盘后,我丢失了gif中的帧,并且它不再具有动画效果.不确定问题是否在下面的方法中,或者是否是在我保存它的时候,但是对于为什么以下方法不起作用的任何反馈意见.该方法正在运行 - 只是没有创建一个合适的动画GIF文件.
public Image getImage(String url)
{
HttpWebRequest httpWebRequest = (HttpWebRequest)HttpWebRequest.Create(url);
HttpWebResponse httpWebReponse = (HttpWebResponse)httpWebRequest.GetResponse();
Stream stream = httpWebReponse.GetResponseStream();
return Image.FromStream(stream, true, true);
}
Image im = getImage(url)
im.Save(pth,ImageFormat.Gif);
Run Code Online (Sandbox Code Playgroud)
您不应该Image从流中创建(它只会存储第一帧).相反,您应该Stream使用(例如)将内容复制到为目标文件创建的Stream.CopyTo方法将内容直接写入磁盘FileStream.
using (Stream stream = httpWebReponse.GetResponseStream())
using (FileStream fs = File.Create(path))
{
stream.CopyTo(fs);
}
Run Code Online (Sandbox Code Playgroud)