C#使用动画和静态.web文件在Picturebox中显示webp



我的磁盘上有一堆.web文件。我现在想在WinForm应用程序内的图片框中显示这些文件(一个接一个(。将webp转换为位图是可行的。问题是某些webp文件已设置动画。

该应用程序应该能够查看webp文件是静态的还是动画的,并且应该将其转换为可以在图片框中显示的内容。

这是我当前显示静态webp文件的代码:

Imazen.WebP.SimpleDecoder decoder = new Imazen.WebP.SimpleDecoder();
var bytes = File.ReadAllBytes(filename);
var bitmap = decoder.DecodeFromBytes(bytes, bytes.Length);
pictureBox1.Image = bitmap;

这使用了libwebp的包装器。但我对不同的资源/图书馆完全满意。网站上提到的大多数方法都要求你已经知道目标类型(例如gif jpg等(。任何输入均已通知。

检查System.Drawing.Animator类。它适用于GIF,但理论上应该支持任何支持动画的位图(bitmap.CanAnimate(。您需要手动设置计时器和任务,以便在指定的时间绘制帧。

话虽如此,乍一看,您选择的库并不能处理动画位图。

相关内容

  • 没有找到相关文章