如何用VB6创建GIF动画

专注VB编程开发20年 2017-07-29 09:05:37
想做一些软件用法的简单演示GIF动画,或者直接截取多个图片,再在网页上用JS进行模拟延时加载显示虚拟GIF效果(但怕这样太浪费网络流量,有人说可以多个图压成ZIP,然后用JS进行提取再显示,能实现?)
第三种方法比如把所有的多个图全贴到一个PNG图片中,然后用HTMl5或js技术进行绘制显示成GIF效果?(单个图片在下载时会自动进行GZIP压缩)
第4中方法:用软件动态生成FLASH文件或者控制显示多个图片?
===============
大家有用过什么方法?
感觉下面这个例子AVI转GIF比较靠谱,压缩率也高,但是文件模块太多了,看不懂,有没有人可以简化一下?
直接导入多个图片,设置GIF文件宽高,加入多个图片,每个图片显示的LEFT,TOP坐标,然后延时时间,透明,基本上用到这些方法就够了。

多帧GIF的编码似乎网络上很难找到开源的代码,而GDI+因为GIF版权问题不支持多帧GIF的保存,这个代码能提取出AVI的每一帧,然后转换为动态GIF,如果能看懂这段代码,其他格式的一些列图像转换为GIF也很方便了。共享给大家。

http://files.cnblogs.com/laviewpbt/AVItoGIF1.0.rar

看了一下有这些方法
EncoderValueMultiFrame
网址[创建gif动画源码]-C++ GDI+ 多张图片合并生成GIF动画格式图片 http://blog.csdn.net/aoshilang2249/article/details/38903057

可能是.net创建gif动画的DLL源码-NGif, Animated GIF Encoder for .NET https://www.codeproject.com/Articles/11505/NGif-Animated-GIF-Encoder-for-NET
ASP.NET生成透明GIF的准完美方案[创建GIF动画] http://www.cnblogs.com/ashei/archive/2009/10/29/1592234.html
vb.net制作gif图片源码[创建gif动画] http://jingyan.baidu.com/article/e2284b2b36ae80e2e6118d3d.html

一个DLL:.NET中生成GIF动画的Encoder-CSDN下载
C#开发GIF动画, 把jpg或bmp图片按帧时生成GIF动画, 同样可以把GIF动画拆分成N个jpg或bmp
http://download.csdn.net/download/empwwb/2143700

最简单的GDI+图片绘制代码(含动态gif)_vb吧_百度贴吧
http://tieba.baidu.com/p/945434685

VB GIF动画显示控件源代码 下载_控件组件_VB源码_源码下载_新兴网络
http://www.newxing.com/Code/VB/Controls/875.html
...全文
5658 30 打赏 收藏 转发到动态 举报
写回复
用AI写文章
30 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2018-06-12
  • 打赏
  • 举报
回复
引用 28 楼 xiaoyao961 的回复:
[quote=引用 25 楼 zhao4zhong1 的回复:] 总是有问题需要当事人自己解决而网上没有现成答案。这很正常。
有些问题永远找不到答案,唉,用VB.NET也实现不易。上次试过一个控件,速度慢的不行。想要生成的GIF最小,又清晰,不容易。[/quote] 劝你还是回到 先手动在GifMovieGear软件GUI下实现所需功能,然后用AutoHotKey录制.ahk脚本,最后修改.ahk脚本满足你的需求,再在VB中直接Shell "xxx.ahk" 这个阳关大道上来吧。
  • 举报
回复
@赵4老师 刚刚看到大师的回复,请问你Q多少?我Q2776478814,群110698998
  • 打赏
  • 举报
回复
引用 25 楼 zhao4zhong1 的回复:
总是有问题需要当事人自己解决而网上没有现成答案。这很正常。
有些问题永远找不到答案,唉,用VB.NET也实现不易。上次试过一个控件,速度慢的不行。想要生成的GIF最小,又清晰,不容易。
PctGL 2018-04-25
  • 打赏
  • 举报
回复
http://www.newxing.com/Code/VB/Controls/875.html 帮你搜了一个,这个源码以前看过,忘了是不是能读,能写的那种了 理论上来说,有读的代码,模仿写个也不是问题
PctGL 2018-04-25
  • 打赏
  • 举报
回复
百度下吧,我记得以前vb纯代码实现的 gif 控件一把一把的,以前有个叫枕善居的网站上我还下过一个,读取,制作,透明啥的都实现了
  • 打赏
  • 举报
回复
引用 20 楼 zhao4zhong1 的回复:
[quote=引用 18 楼 xiaoyao961 的回复:] [quote=引用 17 楼 zhao4zhong1 的回复:] [quote=引用 16 楼 xiaoyao961 的回复:] [quote=引用 14 楼 zhao4zhong1 的回复:] http://www.gamani.com/index.htm
gif Movie Gear是个收费软件呀,我觉的以前一个GIFTOOLS工具不错,有时实在找不到源码的话,做一个按键一样的工具去控制现在有的软件也是一个方法。[/quote] gif Movie Gear破解版搜不到吗? [/quote] 我想要的是一个可以用代码进行控制的GIF动画生成的OCX或DLL,并不是想要一个PS一样的GIF手工编辑工具。[/quote] 参考15楼。 使用比如AutoHotKey脚本调用手工编辑工具,和自动调用更底层的API,没有本质区别。[/quote] AutoHotKey脚本调用手工编辑工具,一般很难操作,但这个是可行的方法,毕竟源码几乎找不到,但是现成的工具有好多,有几款是适合的。弄个按键精灵还是可以完成“生成GIF"的任务。 找了一个SCREEN TO GIF的工具,先录像,录像是一大片图片,然后再转换为GIF,速度要几分钟,这真是垃圾呀。 (Gif动画录制软件(Screen To Gif) V2.8.1 绿色版-需.net4.6)1.8M 而用LICEcap这个工具生成的GIF更小,软件只有412K。 这个是屏幕录像工具,并不是直接几个图片拼成GIF的工具。 其实这些算法早就有人写出来了,但是一般都做成了商业作品,国内开源的很少,国外的中国人一般又不会去看。 所以我们中国人就经常做一些水平一般的工具,高深的就做不了,比如APNG动画,到现在也没看到一个如何生成apng的源码。 而易语言却写出了一个读取APNG格式并显示为动画的源码,但如何生成APNG却没有。 有时易语言反倒在这些方面走在前列了。 还有Websocket的vb代码,也是去年才有人写出来了,但是收到数据一多就全粘在一起,加密数据一解析就全乱了。 我也是花了几天时间才解决这个问题,但只有服务端,做VB Websocket客户端发,却发送几条就崩溃。 有人研究过这些?
赵4老师 2017-08-05
  • 打赏
  • 举报
回复
总是有问题需要当事人自己解决而网上没有现成答案。这很正常。
赵4老师 2017-08-03
  • 打赏
  • 举报
回复
引用 16 楼 xiaoyao961 的回复:
[quote=引用 14 楼 zhao4zhong1 的回复:] http://www.gamani.com/index.htm
gif Movie Gear是个收费软件呀,我觉的以前一个GIFTOOLS工具不错,有时实在找不到源码的话,做一个按键一样的工具去控制现在有的软件也是一个方法。[/quote] gif Movie Gear破解版搜不到吗?
笨狗先飞 2017-08-03
  • 打赏
  • 举报
回复
引用 21 楼 zhao4zhong1 的回复:
[quote=引用 19 楼 bakw 的回复:] [quote=引用 9 楼 chewinggum 的回复:] 直接把gif格式搞清楚,然后实现生成它!! http://blog.csdn.net/wzy198852/article/details/17266507
讲压缩算法那页打不开了,关键还是算法的问题。。。[/quote] https://www.baidu.com/s?wd=颜色数压缩算法 [/quote]
赵4老师 2017-08-03
  • 打赏
  • 举报
回复
赵4老师 2017-08-03
  • 打赏
  • 举报
回复
引用 19 楼 bakw 的回复:
[quote=引用 9 楼 chewinggum 的回复:] 直接把gif格式搞清楚,然后实现生成它!! http://blog.csdn.net/wzy198852/article/details/17266507
讲压缩算法那页打不开了,关键还是算法的问题。。。[/quote] https://www.baidu.com/s?wd=颜色数压缩算法
赵4老师 2017-08-03
  • 打赏
  • 举报
回复
引用 18 楼 xiaoyao961 的回复:
[quote=引用 17 楼 zhao4zhong1 的回复:] [quote=引用 16 楼 xiaoyao961 的回复:] [quote=引用 14 楼 zhao4zhong1 的回复:] http://www.gamani.com/index.htm
gif Movie Gear是个收费软件呀,我觉的以前一个GIFTOOLS工具不错,有时实在找不到源码的话,做一个按键一样的工具去控制现在有的软件也是一个方法。[/quote] gif Movie Gear破解版搜不到吗? [/quote] 我想要的是一个可以用代码进行控制的GIF动画生成的OCX或DLL,并不是想要一个PS一样的GIF手工编辑工具。[/quote] 参考15楼。 使用比如AutoHotKey脚本调用手工编辑工具,和自动调用更底层的API,没有本质区别。
笨狗先飞 2017-08-03
  • 打赏
  • 举报
回复
引用 9 楼 chewinggum 的回复:
直接把gif格式搞清楚,然后实现生成它!! http://blog.csdn.net/wzy198852/article/details/17266507
讲压缩算法那页打不开了,关键还是算法的问题。。。
  • 打赏
  • 举报
回复
引用 17 楼 zhao4zhong1 的回复:
[quote=引用 16 楼 xiaoyao961 的回复:] [quote=引用 14 楼 zhao4zhong1 的回复:] http://www.gamani.com/index.htm
gif Movie Gear是个收费软件呀,我觉的以前一个GIFTOOLS工具不错,有时实在找不到源码的话,做一个按键一样的工具去控制现在有的软件也是一个方法。[/quote] gif Movie Gear破解版搜不到吗? [/quote] 我想要的是一个可以用代码进行控制的GIF动画生成的OCX或DLL,并不是想要一个PS一样的GIF手工编辑工具。
赵4老师 2017-08-02
  • 打赏
  • 举报
回复
在我眼中,间接调用命令行或GUI软件获取我想要的信息,跟调用相关底层或高层API获取,没有本质区别。 命令行使用输入输出重定向。GUI使用AutoHotKey。
赵4老师 2017-08-02
  • 打赏
  • 举报
回复
脆皮大雪糕 2017-08-02
  • 打赏
  • 举报
回复
引用 12 楼 xiaoyao961 的回复:
[quote=引用 11 楼 chewinggum 的回复:] [quote=引用 10 楼 xiaoyao961 的回复:] [quote=引用 9 楼 chewinggum 的回复:] 直接把gif格式搞清楚,然后实现生成它!! http://blog.csdn.net/wzy198852/article/details/17266507
想想简单,实现难呀,你写一个试试 APNG格式动画在CHROME 59版本以上也支持,有易语言的显示APNG的代码,如何生成APNG有人会吗?[/quote] 当年找不到满足我要求的gif控件的时候,我还真自己实现解析gif,没弄动画就是了。生成的话其实主要难度在于生成调色板。如何将你的图片色彩合理分布到256种上是需要考验算法的。gif的游程编码实现其实不难。 单帧PNG的VB解析和封装代码网上有的,我曾经有一份,时间长了不知哪里去了。APNG是在PNG基础上的扩展,搞清楚编码方式应该也就是单帧PNG的叠加吧(最后这一句话未经严谨证实,不对勿喷) [/quote] GIF动画制作控件(GifAni45.ocx)免费版_GIF动画制作控件(GifAni45.ocx)免费版下载_GIF动画制作控件(GifAni45.ocx)4.5-华军软件园 http://www.onlinedown.net/soft/549104.htm 这种吧,前几年前一个中国人设计的生成GIF动画的控件,官网还能打开,结果生成的GIF没法连续播放,也没法设置透明度,一遍完了就中止了,网上好多都是半成品,不容易呀。[/quote] 网上找的很多都不能满足要求,当年因此被逼自己边学边做写了一大堆图形图像处理的东西,原则上系统里不使用第三方没有源代码的东西,即使别人做的也要有源代码我们可以改。后来,逐渐形成一套图形管理系统,经过十几年的发展,现在已经成为证券行业里市场占有率不低的一款影像管理系统,当然,已经不是VB的了。
  • 打赏
  • 举报
回复
引用 14 楼 zhao4zhong1 的回复:
http://www.gamani.com/index.htm
gif Movie Gear是个收费软件呀,我觉的以前一个GIFTOOLS工具不错,有时实在找不到源码的话,做一个按键一样的工具去控制现在有的软件也是一个方法。
  • 打赏
  • 举报
回复
引用 11 楼 chewinggum 的回复:
[quote=引用 10 楼 xiaoyao961 的回复:] [quote=引用 9 楼 chewinggum 的回复:] 直接把gif格式搞清楚,然后实现生成它!! http://blog.csdn.net/wzy198852/article/details/17266507
想想简单,实现难呀,你写一个试试 APNG格式动画在CHROME 59版本以上也支持,有易语言的显示APNG的代码,如何生成APNG有人会吗?[/quote] 当年找不到满足我要求的gif控件的时候,我还真自己实现解析gif,没弄动画就是了。生成的话其实主要难度在于生成调色板。如何将你的图片色彩合理分布到256种上是需要考验算法的。gif的游程编码实现其实不难。 单帧PNG的VB解析和封装代码网上有的,我曾经有一份,时间长了不知哪里去了。APNG是在PNG基础上的扩展,搞清楚编码方式应该也就是单帧PNG的叠加吧(最后这一句话未经严谨证实,不对勿喷) [/quote] GIF动画制作控件(GifAni45.ocx)免费版_GIF动画制作控件(GifAni45.ocx)免费版下载_GIF动画制作控件(GifAni45.ocx)4.5-华军软件园 http://www.onlinedown.net/soft/549104.htm 这种吧,前几年前一个中国人设计的生成GIF动画的控件,官网还能打开,结果生成的GIF没法连续播放,也没法设置透明度,一遍完了就中止了,网上好多都是半成品,不容易呀。
脆皮大雪糕 2017-08-01
  • 打赏
  • 举报
回复
引用 10 楼 xiaoyao961 的回复:
[quote=引用 9 楼 chewinggum 的回复:] 直接把gif格式搞清楚,然后实现生成它!! http://blog.csdn.net/wzy198852/article/details/17266507
想想简单,实现难呀,你写一个试试 APNG格式动画在CHROME 59版本以上也支持,有易语言的显示APNG的代码,如何生成APNG有人会吗?[/quote] 当年找不到满足我要求的gif控件的时候,我还真自己实现解析gif,没弄动画就是了。生成的话其实主要难度在于生成调色板。如何将你的图片色彩合理分布到256种上是需要考验算法的。gif的游程编码实现其实不难。 单帧PNG的VB解析和封装代码网上有的,我曾经有一份,时间长了不知哪里去了。APNG是在PNG基础上的扩展,搞清楚编码方式应该也就是单帧PNG的叠加吧(最后这一句话未经严谨证实,不对勿喷)
  • 打赏
  • 举报
回复
引用 9 楼 chewinggum 的回复:
直接把gif格式搞清楚,然后实现生成它!! http://blog.csdn.net/wzy198852/article/details/17266507
想想简单,实现难呀,你写一个试试 APNG格式动画在CHROME 59版本以上也支持,有易语言的显示APNG的代码,如何生成APNG有人会吗?
加载更多回复(9)

1,486

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧