博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
再再发Gif动画处理类库 - 315版
阅读量:4630 次
发布时间:2019-06-09

本文共 1240 字,大约阅读时间需要 4 分钟。

不废话,新增了多个gif图片合并功能,改善了单色算法
合成效果:
原图: 
 
图片太多,截图如上
合并后效果:
下面三个动画
合并后的效果
注意,您合并的图像最好大小一致,我没有找到完全一样的图像,所以费了很大的周折,写js的时候,都知道ie这家伙适应能力强,随便写个函数就可以支持,可这次IE却拖了后腿,我的原图像大小不一致,开始我没找到最大高度和最大长度,就一个个合成了,在windows中浏览没有任何问题,可以在IE中就无法动画了,在firefox中却可以,费了好长时间才找到是大小的原因。后来加了一个
        Size FindMaxSize(List
<
string
>
 sources)
        
{
            List
<int> widths = new List<int>();
            List
<int> heights = new List<int>();
            
foreach (string s in sources)
            
{
                Bitmap bmp 
= new Bitmap(s);
                widths.Add(bmp.Width);
                heights.Add(bmp.Height);
                bmp.Dispose();
            }
            widths.Sort();
            heights.Sort();
            
return new Size(widths[widths.Count - 1], heights[heights.Count - 1]);
        }
才解决问题
合并的方法为:
       /**/
/// <summary>
       
/// 合并多个gif文件
       
/// </summary>
       
/// <param name="sourceGifs">原图像路径集合</param>
       
/// <param name="outGif">合并后图像路径</param>
       
/// <param name="delay">间隔时间</param>
       
/// <param name="repeat">是否重复播放</param> 
        public void Merge(List<string> sourceGifs, string outGif, short delay,bool repeat)
另外,单色算法有所改变,先的单色效果为:
原图:
单色后:
发现有些人将代码拷贝过去之后,马上将版权改成自己的名字,而且在网上肆意张贴,以后的版本不会直接提供文件下载,如果有需要朋友,只要是园子的注册用户,发邮件给我,我保准回复。这样也许可以为园子增加一些注册用户吧,我的email:jillzhang@126.com,再次声明,园子中兄弟有需要的,发邮件给我就可以了,由此带来的不便,还请兄弟们能理解。邮件中最好注明博客园ID和网址
声明:代码公开,但使用的时候,请保留作者信息和版权声明,这样我才会有动力继续完善,谢谢配合

转载于:https://www.cnblogs.com/jillzhang/archive/2008/03/14/1106427.html

你可能感兴趣的文章
引入css的四种方式
查看>>
Mysql蠕虫复制
查看>>
pfSense 2.4.3 发布,包含重要的安全修复补丁
查看>>
centos7+ansible自动化工具使用
查看>>
iOS开发UI篇—transframe属性(形变)
查看>>
3月7日 ArrayList集合
查看>>
正则替换
查看>>
jsp 环境配置记录
查看>>
快速学习的方法论
查看>>
线程之线程标识
查看>>
本地视频播放黑屏,有声音
查看>>
Python3-Cookbook总结 - 第一章:数据结构和算法
查看>>
算法Hash
查看>>
剑指offer-丑数
查看>>
Java网页数据采集器[下篇-数据查询]【转载】
查看>>
企业云存储云办公方案
查看>>
Python03
查看>>
CSS单位分析及CSS颜色表示法、颜色表(调色板)
查看>>
设计模式---(设计原则)面向对象设计原则
查看>>
WebGoat教程学习(三)--Ajax安全
查看>>