压缩gif图片的一些方法:图片尺寸 、减少颜色、减少帧。
1、局部调色板修改为全局调色板
一个GIF可以有全局调色板也可以没有全局调色板,如果定义了全局调色板并且没有定义某一幅图像的局部调色板,则本幅图像采用全局调色板;如果某一幅图像定义的自己的局部调色板,则该幅图像使用自己的局部调色板。如果没有定义全局调色板,则GIF文件中的每一幅图像都必须定义自己的局部调色板。
可以通过算法将gif每一帧的局部调色板修改为全局调色板,这样数据就会减少很多,特别是帧多,效果明显。
2、擦除重复的像素
处置方法(Disposal Method):指出处置图形的方法,当值为:
0 - 不使用处置方法
1 - 不处置图形,把图形从当前位置移去
2 - 回复到背景色
3 - 回复到先前状态
4-7 - 自定义
可以用处置方法,通过前后对比擦除重复像素。特别是视频类的gif,转换效果明显。
3、减少帧的数量
gif每一帧之间有一个delay参数,IE默认60ms以上,其他chrome、firefox、safari等20ms以上。这是浏览器的最小间隔。而人的肉眼识别经过测试大概在80ms至45ms之间,而有的gif间隔小于45ms。通过增加间隔,减少gif内冗余的帧也是有效的压缩办法。
4、改变图片尺寸(简单、粗暴、有效)
笔者经过多方测试,发现目前相关软件较少,软件Ulead GIF Animator 5(英文)比较不错,photoshop(太专业),而且都是国外软件。经过万能的百度搜索,居然发现有一个在线的工具也能实现www.gif5.net(中文版),而且效果不错,不过有水印,但是分享网站后可以修改水印。笔者感到欣慰的是,经过google也没有发现国外比较好的工具(多是一些简单制作在线工具)。于是抱着好奇的心态,体验了一把,网站功能大概如下:
1、多张图片合成GIF动态图片:可添加多张图片,设置参数后生成gif
2、多张gif合成一张:可添加多gif张图片,设置参数后合成一张gif
3、gif图片编辑:将原始GIF图片添加后点击生成按钮可以插入删除帧和修改gif速度和大小
4、视频转gif:添加要转换的视频,点击抓取即可获取视频转gif动态图片
5、flash转gif:添加要转换的flash,点击抓取即可获取flash转gif动态图片
6、摄像头拍摄gif:点击摄像头抓图按钮,就可以开始抓取摄像头拍摄的gif动态图片
7、jpg\png等图片转gif:添加需要转换的图片,点击生成即可
8、gif图片压缩优化:自动对制作的gif图片进行删除多余帧、擦除重复像素、使用全局调色板等优化压缩
9、图片大小修改:添加图片后,输入需要修改的图片高宽后点击生成即可
经过测试,发现所有功能均在浏览器端完成,居然还发现了flash转gif的牛逼功能。http://www.gif5.net/