如何获取gif信息(处理方法,帧宽度/高度,帧计数)只知道图像Uri而不在wpf中下载

本文关键字:图像 Uri 下载 wpf gif 信息 获取 何获取 处理 方法 高度 | 更新日期: 2023-09-27 18:28:25

我正在尝试将我的gif图像设置为动画。我在这里找到了一些非常合适的代码:http://tomlev2.wordpress.com/2011/03/27/wpf-display-an-animated-gif-image/

但我面临的下一个问题是:在windows2003服务器上,windowsxp无法获取gif元数据(WIC可用于vista、win7…)。我需要获取帧的宽度和高度、处理方法和其他一些数据。gif图像是通过Uri获得的。我如何在只知道Uri的情况下获得必要的数据,而不在磁盘上保存gif?

如何获取gif信息(处理方法,帧宽度/高度,帧计数)只知道图像Uri而不在wpf中下载

您可以将图像从流加载到image对象中,并可以使用URL创建流。这将允许你在不保存到磁盘的情况下创建一个Image对象,并且你可以从该对象中获得宽度和高度等信息。这有帮助吗?

例如

Image image;
WebRequest request = WebRequest.Create("http://<insert URL here >");
using (WebResponse response = request.GetResponse())
{
    using (Stream stream = response.GetResponseStream())
    {
        image = Image.FromStream(stream);
    }
}
// Use image here...