使用C#从二进制数据创建动画gif图像

4

我正在使用C# 2010创建一个自定义应用程序,将图像从Lotus Notes复制到SharePoint。我正在使用Domino从Notes中读取内容。Notes中有内联的动画gif图像,当我读取内容时,它以base64Stream的字节形式出现。如果我将内容保存为.gif扩展名,则图像可以保存,但动画会丢失。

请问如何从base64Stream的字节中保存具有动画效果的图像?


3
如果你所处理的只是原始字节,那么动画已经丢失了。 - SLaks
1
您的问题在此帖子中有多个解决方案建议:http://social.msdn.microsoft.com/Forums/en-US/csharpgeneral/thread/21bbe070-6c87-4f2f-93c4-22f7c1ea1648/ - Peter
嗨,看一下这个线程,一旦你得到了图像的流,你可以使用Image类将其写入文件中:http://stackoverflow.com/questions/8773936/best-way-to-save-an-image/8774086#comment10938461_8774086 - Giorgio Minardi
1个回答

1

如果您百分之百确定您只是简单地写出字节而没有进行任何修改,那么我认为在写出过程中很难丢失动画。

要么在您将其写出后,您以一种不显示动画的方式查看它,要么您写出的字节本身就没有动画。

您是否有办法直接比较两个 GIF(存储在笔记中的 GIF 和您写出的 GIF)?如果您可以这样做,您可以验证字节不相同(我猜两个文件的大小完全不同)。

我目前怀疑的是,当您使用笔记获取 GIF 时,它并没有正确地抓取 GIF,而只是抓取了其中的第一帧(例如 MS Paint 也会这样做)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接