如何使用C#调整动态gif文件的大小?

5
亲爱的大家,
我需要使用C#将动画gif文件调整为所需的大小。我该怎么做?我在谷歌上搜索了解决方案,但没有找到合适的解决方案。我已经看过了atalasoft、codeproject和codeplex上的giflib,但这些都不是合适的解决方案。所以,请帮助我使用C#重新调整动画gif文件的大小。
提前感谢
Riad

快速、简单而不太规范的方法是:下载ImageMagick并通过exec调用它(convert -resize或类似命令)-> http://www.imagemagick.org/script/index.php。还有一个ImageMagick库可供自己编写程序使用。 - joni
谢谢。但这是一个大问题。我该如何使用C#调用它?或者应该调用哪个文件或函数?能否请您指导一下。 - riad
Atalasoft dotImage 有什么不合适的地方吗?我为客户编写了示例代码,使用 dotImage 实现了该功能。 - plinth
请参考此链接:https://dev59.com/RnRB5IYBdhLWcg3wHkLi - ripper234
重复的问题,与https://dev59.com/UEbRa4cB1Zd3GeqP1IjB相同,但目前都没有有用的答案。 - JYelton
显示剩余3条评论
2个回答

1

实际上,没有快速而简单的方法。

您需要将GIF分成单独的帧,然后调整每个单独的帧大小,最后重新组合GIF图像。

很抱歉,我没有提供给您代码,只能建议您参考Google


0

Atalasoft的DotImage应该很好用,他们甚至在他们的网站上有示例代码


他说,他已经看到了Atalasoft... - Aykut Çevik
@cevik 是的,但他没有说明为什么这不是一个“合适的解决方案”,而且并不一定立即明显的是Atalasoft支持动画GIF。示例代码必须要做很多工作,而不仅仅是调用ResizeAnimatedGif方法。如果没有看到那段代码,你可能会轻易地忽略Alatlasoft,而它实际上可以完成任务。 - stevemegson
亲爱的@stevemegson,我从你提供的链接下载了代码。但是它不起作用。然后我下载了Dotimage3.0,仍然无法工作。在C#解决方案资源管理器中,缺少Atalasoft.Image引用,因此程序无法运行。为了解决问题,我下载了一个注册表扫描器(根据许多谷歌建议),并扫描了我的注册表,但问题仍在继续...我搜索atalasoft.image.dll文件以添加到我的引用文件中,但我无处获得。Atalasoft是一款注册表产品,评估过程将在30天内到期。 - riad
DotImage的免费版本应该可以,虽然我承认我实际上没有使用过它。http://www.atalasoft.com/photofree - stevemegson
谢谢兄弟,但这是试用版。我已经提到过了。有没有其他解决方法?(调整动画GIF文件大小) - riad
有付费版本的30天试用期,但也有免费版本 - 安装向导会询问您想要哪个版本... http://i.imgur.com/Oy43b.png - stevemegson

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