如何使用LEADTOOLS将多页面图像转换为逆向播放的GIF:25天25个项目

使用LEADTOOLS第19版,该C#编写的的WinForms项目可以加载一个多页面图像并将这些页面反转以创建一个逆向播放的GIF。

发布于 2016/12/26 00:00

行业动态

作为LEAD Technologies 25周年纪念的一部分,我们正在搞一个“25天收集25个项目来展示LEAD功能强度和易用性”的活动。今天要展示的项目来自于艾伦的分享。

打开Gif文件

clip_image001

保存逆向的Gif

clip_image003

Ping Pong选项

clip_image005

它是做什么的

使用LEADTOOLS第19版,该C#编写的的WinForms项目可以加载一个多页面图像并将这些页面反转以创建一个逆向播放的GIF。

所使用的功能

· Viewers

· Formats

· Image Processing

开发进程日志

大家好,我是艾伦。我要用C#编写这样一个的WinForms应用程序,该程序可以在一个多页面文件(GIF,TIFF,Word中,PDF等)中加载,颠倒页面顺序,并将文件保存为GIF,以便逆向播放图像。该应用程序还具有“Ping Pong”的功能,也就是无限次循环播放GIF图像。

我将以创建应用程序的主用户界面来启动这个项目。我要使用LEADTOOLS RasterPictureBox 控件,它能够让我很容易地播放动画。

Documentation: RasterPictureBox

主用户界面的创建现在已经完成,这花费了我大约30分钟的时间。现在我要开始执行的步骤是,将 GIF图像加载到RasterPictureBox 控件并启动该动画。

Documentation: PlayAnimation

现在我已经执行完了GIF图片的加载和播放步骤。由于我以前从来没有使用过RasterPictureBox 控件,所以我花费了一些时间来研究该控件究竟是如何运行的。这个过程花了我大约45分钟的时间。

我现在要执行的步骤是GIF图像本身的反转。为了做到这一点,我要使用RasterCodecs.Load方法来一个接一个地反向加载图像中的页面。我还要用CombineCommand来将各个框架结合起来,以便用GIF规范来为每一帧创建一个“扁平化”的图像。

Documentation: CombineCommand

然后,我要用RasterImage.AddPage方法来将合成图像添加到新的RasterImage对象中。

Documentation: RasterCodecs.Load

Documentation: RasterImage.AddPage

现在我已经执行完了GIF图像的逆转。这花了我大约4个小时的时间。现在我要开始执行的步骤是实现该应用程序的“Ping Pong”的功能。为了完成这个任务,我需要使用RasterPictureBox 控件的FrameChanged事件。

Documentation: OnFrameChanged

现在我已经实现了该应用程序的“Ping Pong”的功能,并且修复了我发现的一些程序漏洞。这花了我大约一个半小时的时间来完成。

我的应用程序已接近完成。现在需要的是开始进行漏洞测试,并给代码添加清晰的注解,以便使它更容简单易读。

虽然在进行漏洞测试并添加注解以使我的代码更易读的过程中,我发现了一些程序漏洞,但现在这些漏洞我已经修复完了。这花了我大约一个小时的时间。所以说,我的应用程序现在已经做好了进行部署的准备。

该应用程序总共花费了我七小时零四十五分钟的时间。但是,如果没有LEADTOOLS的帮助,要完成这一切可能要花费几个星期,甚至几个月。

下载该项目

该示例项目的源代码您可以点击这里进行下载。

11 Reverse Animated GIF.zip (16.51 kb)

要运行该项目,请将其解压缩到该目录下:C:\LEADTOOLS 19\Examples\DotNet\CS directory。


支持

关于其他产品的更多信息,请访问我们的官方网站,

欢迎下载免费的全功能评估版SDK,全功能试用版中有这个例子的全部源代码。

同时欢迎您使用评估版期间的免费技术支持。

关于葡萄城

葡萄城是专业的软件开发技术和低代码平台提供商,以“赋能开发者”为使命,致力于通过表格控件、低代码和BI等各类软件开发工具和服务,一站式满足开发者需求,帮助企业提升开发效率并创新开发模式。葡萄城开发技术始于1980年,40余年来始终聚焦软件开发技术,有深厚的技术积累和丰富的产品线。是业界能够同时赋能软件开发和低代码开发的企业。凭借过硬的产品能力、活跃的用户社区和丰富的伙伴生态,与超过3000家合作伙伴紧密合作,产品广泛应用于信息和软件服务、制造、交通运输、建筑、金融、能源、教育、公共管理等支柱产业。

推荐相关资源
关注微信
葡萄城社区二维码

关注“葡萄城社区”

活字格低代码二维码

关注“活字格低代码”

想了解更多信息,请联系我们, 随时掌握技术资源和产品动态