|
通过数据流的形式获取GIF图片,不管是保存后的图片还是输出该文件都出现了丢帧的现象,各位有没办法,帮忙解决一下了。
C#主要部分的代码如下:
string cache_dir ="C:\\mm\\";
string filename = cache_dir + "38752.gif";
string imageStr="https://www.gdutbbs.com/images/smilies/023.gif";
System.Net.HttpWebRequest httpWebRequest=(System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(imageStr);
System.Net.HttpWebResponse img_resp=(System.Net.HttpWebResponse)httpWebRequest.GetResponse();
System.Drawing.Image bp = System.Drawing.Image.FromStream(img_resp.GetResponseStream(),true);
bp.Save(filename,System.Drawing.Imaging.ImageFormat.Gif);
System.IO.MemoryStream ms = new System.IO.MemoryStream();
bp.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
byte [] image_data = new byte[ms.Length];
ms.Seek(0,System.IO.SeekOrigin.Begin);
ms.Read(image_data,0,image_data.Length);
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.AddHeader("Content-Type","image/gif");
Response.BinaryWrite(image_data);
//Write to cache file
if(!System.IO.Directory.Exists(cache_dir))
{
System.IO.Directory.CreateDirectory(cache_dir);
}
System.IO.FileStream fs = new System.IO.FileStream("C:\\mm\\dd.gif",FileMode.Create);
fs.Write(image_data,0,image_data.Length);
fs.Close(); |
|