解码的.gif图片不完整

时间:2019-03-14 10:28:22

标签: c# wpf decode animated-gif

enter image description here

我已经将.gif文件解码为单个图像,但是由于原始.gif的编码或其他原因而导致。第一个解码的帧对于其他所有帧都很好,我得到的只是部分渲染。我认为.gif每一帧上相同的公共共享像素都被排除在后续帧之外。

有什么想法吗?解?有人遇到过这个问题吗?

2 个答案:

答案 0 :(得分:3)

如果您只拍摄和绘制GIF文件的单个帧,那么这可能是可以预期的。动画GIF通常以这种方式进行优化,因为在动画过程中,每个帧都位于最后一个帧的顶部,因此许多帧大部分是透明的,并且只包含更改的部分(我认为帧也可以小于图像本身。除此之外)。这样可以大大减少文件大小。

但是,这意味着,如果要向用户显示动画中实际显示的帧,则必须先绘制所有先前的帧来重建它们。

答案 1 :(得分:0)

使用压缩程度较低(无透明度,无堆叠)的.gif可以防止丢失。