我知道有类似的帖子,但我没有得到任何答案我的问题,因此发布此。使用Image.FromStream返回图像
我有一个方法,从图像路径中检索并返回图像。以下是我使用的代码片段。这在某些情况下会失败,因为图像在返回后丢失。
public static Image GetImageFromPicPath(string strUrl)
{
WebResponse wrFileResponse;
wrFileResponse = WebRequest.Create(strUrl).GetResponse();
using (Stream objWebStream = wrFileResponse.GetResponseStream())
{
return Image.FromStream(objWebStream);
}
}
如果我使用位图类并返回图像,元数据将丢失。
如果我使用MemoryStream(如下图所示),并且我不配置MemoryStream,它就可以工作。但是这里可能有内存泄漏。如果我使用block,图像会丢失。
MemoryStream ms = new MemoryStream();
objWebStream.CopyTo(ms, 8192);
return System.Drawing.Image.FromStream(ms);
有人可以建议我最好的方法来解决这个问题。
在此先感谢!
“图像丢失”是什么意思? – CodeCaster
检索到图像后,我试图显示它。它给了我GDI +错误(如果使用我提到的第一个片段)。我假设图像丢失。虽然不是很确定。 – subbu