[2014.01.27]wfGifAnimator 动画GIF组件 3.0
  组件支持设置GIF帧延时和获取GIF的帧延迟。
  组件支持添加或插入或更新帧(支持bmp/jpg/gif/wmf/emf/ico格式)、删除帧、清空帧操作。
  组件支持GIF动画缩放大小。
  组件支持绘制线段、矩形、圆形、椭圆以及绘制图片。
  组件支持往指定帧输出文字,绘制图片,自动缩放帧。
  组件绘制字体全部采用“逻辑采样”处理,字体边缘圆滑,且速度快。
  组件支持绘制线段、矩形、圆形、椭圆以及绘制图片。
  组件可设置每帧之间的停留时间,以“毫秒”记,即1秒=1000毫秒。
  本组件经过多种平台环境负荷压力测试,运行稳定、速度快、资源占用低。
组件效果图:




C#使用实例:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using wfGifAnimator; namespace wfGifAnimator_Demo
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
//创建Com对象
wfGifAnimatorObject objGifAnimator = new wfGifAnimatorObject(); //创建wfGifAnimatorObject对象实体
objGifAnimator.CreateObject(); objGifAnimator.RegName = ""; //注册名
objGifAnimator.RegSN = ""; //注册序列号 //向动画组件中添加帧,参数为:图片路径(bmp/jpg/gif/wmf/emf/ico格式),该帧停留时间(以毫秒为单位,1秒=1000毫秒)
objGifAnimator.AddFrame(Application.StartupPath + @"\pic\1.bmp", );
objGifAnimator.AddFrame(Application.StartupPath + @"\pic\2.bmp", );
objGifAnimator.AddFrame(Application.StartupPath + @"\pic\3.jpg", );
objGifAnimator.AddFrame(Application.StartupPath + @"\pic\4.jpg", );
objGifAnimator.AddFrame(Application.StartupPath + @"\pic\5.gif", );
objGifAnimator.AddFrame(Application.StartupPath + @"\pic\6.gif", ); for (int N = ; N < objGifAnimator.FrameCount; N++)
{
//向第N帧绘制文字,参数依次为:帧的索引号,X坐标,Y坐标,文字内容,字体名称,字体大小,字体风格,字体颜色,字体背景颜色,字体旋转的角度
//字体样式: 0默认,1加粗,2加斜,3加下划线,4加删除线,5加粗加斜,6加粗加下划线,7加粗加删除线,8加粗加斜加下划线,9加粗加斜加删除线,10加斜加下划线,11加斜加删除线
objGifAnimator.DrawText(N, , , "万福软件", "Arial", , , "ff0000", "", );
objGifAnimator.DrawText(N, , , "WFsoft.com", "Arial", , , "0000ff", "", );
} /*
//改变GIF动画到新的大小,参数为新GIF动画宽度和高度
objGifAnimator.ResizeTo(200, 200); for (int N = 0; N < objGifAnimator.FrameCount; N++)
{
//保存GIF动画中的指定帧,参数为:帧的索引号,帧存放路径
objGifAnimator.ExportFrame(N, @"C:\" + N.ToString() + ".bmp");
} for (int N = 0; N < objGifAnimator.FrameCount; N++)
{
//获取GIF的帧延迟。
MessageBox.Show(objGifAnimator.get_FrameDelayTime(N).ToString());
}
*/ //显示本组件名称,版本,作者,官方网站
//MessageBox.Show(objGifAnimator.Software.ToString() + "\n" + objGifAnimator.Version.ToString() + "\n" + objGifAnimator.Author.ToString() + "\n" + objGifAnimator.Website.ToString()); //动画的循环次数,默认为:-1为无限循环
objGifAnimator.RepeatCount = -; //输出的GIF动画图片到文件
bool bolResult = (bool)objGifAnimator.get_SaveToFile(@"c:\wfGifAnimator_Demo1.gif"); //设置输出的GIF图片保存位置 if (bolResult == true)
{
MessageBox.Show(@"图像保存成功,文件保存到:c:\wfGifAnimator_Demo1.gif");
}
else
{
MessageBox.Show("图像保存失败!");
} objGifAnimator.Close(); //关闭本组件资源
} private void button2_Click(object sender, EventArgs e)
{
//创建Com对象
wfGifAnimatorObject objGifAnimator = new wfGifAnimatorObject(); //创建wfGifAnimatorObject对象实体
objGifAnimator.CreateObject(); objGifAnimator.RegName = ""; //注册名
objGifAnimator.RegSN = ""; //注册序列号 //载入一个已经存在的GIF进行编辑
objGifAnimator.LoadFromFile(@"c:\demo1.gif"); //获取GIF的总播放次数
MessageBox.Show("总帧数:" + objGifAnimator.RepeatCount.ToString()); for (int N = ; N < objGifAnimator.FrameCount; N++)
{
//向第N帧绘制文字,参数依次为:帧的索引号,X坐标,Y坐标,文字内容,字体名称,字体大小,字体风格,字体颜色,字体背景颜色,字体旋转的角度
//字体样式: 0默认,1加粗,2加斜,3加下划线,4加删除线,5加粗加斜,6加粗加下划线,7加粗加删除线,8加粗加斜加下划线,9加粗加斜加删除线,10加斜加下划线,11加斜加删除线
objGifAnimator.DrawText(N, , , "万福软件", "Arial", , , "ff0000", "", );
objGifAnimator.DrawText(N, , , "WFsoft.com", "Arial", , , "0000ff", "", );
} /*
//改变GIF动画到新的大小,参数为新GIF动画宽度和高度
objGifAnimator.ResizeTo(200, 200); for (int N = 0; N < objGifAnimator.FrameCount; N++)
{
//保存GIF动画中的指定帧,参数为:帧的索引号,帧存放路径
objGifAnimator.ExportFrame(N, @"C:\" + N.ToString() + ".bmp");
} for (int N = 0; N < objGifAnimator.FrameCount; N++)
{
//获取GIF的帧延迟。
MessageBox.Show(objGifAnimator.get_FrameDelayTime(N).ToString());
}
*/ //显示本组件名称,版本,作者,官方网站
MessageBox.Show(objGifAnimator.Software.ToString() + "\n" + objGifAnimator.Version.ToString() + "\n" + objGifAnimator.Author.ToString() + "\n" + objGifAnimator.Website.ToString()); //动画的循环次数,默认为:-1为无限循环
objGifAnimator.RepeatCount = -; //输出的GIF动画图片到文件
bool bolResult = (bool)objGifAnimator.get_SaveToFile(@"c:\wfGifAnimator_Demo2.gif"); //设置输出的GIF图片保存位置 if (bolResult == true)
{
MessageBox.Show(@"图像保存成功,文件保存到:c:\wfGifAnimator_Demo2.gif");
}
else
{
MessageBox.Show("图像保存失败!");
} objGifAnimator.Close(); //关闭本组件资源
}
}
}
下载地址:
购买链接:
http://item.taobao.com/item.htm?spm=a1z10.1.w4004-4958980042.12.gASsff&id=36468591940
[2014.01.27]wfGifAnimator 动画GIF组件 3.0的更多相关文章
- [2014.01.27]wfRadar 雷达图组件 2.5
		
全新开发的雷达图组件--wfRadar,使用简单,功能强大,图像处理效果极佳. 组件支持多种图片格式,包括bmp,jpg,gif,wmf,emf,ico,png,pcx,tif,tga,pcx,dcx ...
 - [2014.01.27]wfTextImage 文字图像组件 1.6
		
全新开发的文字转图像组件--wfTextImage,使用简单,功能强大,图像处理效果极佳. 将大段的文本内容转换成GIF图片. 有效防止文字内容被复制抄袭,有效保护文字资料. ...
 - [2014.01.27]wfPng 水印贴图组件 2.1
		
支持载入bmp,jpg,gif,png四种格式等. 支持图片水印使用png格式,支持区域透明,半透明的png图片. 支持图片缩放. 支持画线.画矩形.画椭圆,画正圆等图形. 支持在图片上输出文字. 能 ...
 - [2014.01.27]wfChart 统计图组件 5.6
		
本组件支持多种样式图表,包括柱型图.横柱型图.曲线图.饼图.点图.区域图. 可选择的8大主题风格,且主题可再配置,在加快开发的同时又提供更好的图像效果. 组件图表提供两种输出接口,包括 ...
 - [2014.01.27]wfImage 图像处理组件 3.3
		
组件支持多种图片格式,包括bmp,jpg,gif,wmf,emf,ico,png,pcx,tif,tga,pcx,dcx等. 组件提供两种输出接口,包括保存,直接显示(您再也不用定时清理那些临时的垃圾 ...
 - [2014.01.27]wfPrintOcx 票据打印控件 v5.3
		
支持选择打印机,并自动记忆选择的打印机. 适合打印各类票据格式. 支持画正方形.长方形.圆形.椭圆.横线.竖线.HTTP图片. 支持数字金额转换成中文大写金额. 可以设置固定宽度的文字自动换行. 组件 ...
 - [2014.01.27]WFsoft.wfLibrary.wfVerifyImage 1.8
		
全新开发的验证码图片控件--WFsoft.wfLibrary.wfVerifyImage,使用简单,功能强大. 完全支持.net 2.0编写,对下一代操作系统平稳过渡. 同时支持.ne ...
 - [2014.01.27]WFsoft.wfLibrary.wfIniFile 1.5
		
完全支持.net 2.0编写,对下一代操作系统平稳过渡. 不使用[DllImport("kernel32")]的方式,完全自主的.net 2.0自主解析. 完整支持键 ...
 - [2014.01.27]WFsoft.wfWebCtrl.wfPage 5.9
		
wfPage多功能.Net翻页组件,使用简单,功能强大. 提供"首页","上一页","下一页","末页","转 ...
 
随机推荐
- Git简单应用(1)
			
Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. 1.Windows安装git msysgit是Windows版的Git,从https://git-for-windows. ...
 - HTML标签整理
			
第一次接触动态网站的相关代码,对程序里HTML的标签不理解.在这里会把碰到的HTML标签整理出来,持续更新. 1.<form></form>:用于声明表单,定义采集数据的范围, ...
 - React Native 的绑定 this
			
在React Native开发中,如果使用ES6语法的话,最好绑定this.但是使用ES5语法的话不需要绑定this.因为ES5会autobinding. this所指的就是直至包含this指针的上层 ...
 - Android DownloadProvider学习
			
DownloadProvider 简介 DownloadProvider 是Android提供的DownloadManager的增强版,亮点是支持断点下载,提供了“开始下载”,“暂停下载”,“重新下载 ...
 - Elasticsearch Network Settings
			
网络设置 Elasticsearch 缺省情况下是绑定 localhost.对于本地开发服务是足够的(如果你在相同机子上启动多个节点,它还可以形成一个集群),但是你需要配置基本的网络设置,为了能够在实 ...
 - CSS3的calc()使用
			
CSS3的calc()使用 calc是英文单词calculate(计算)的缩写,是css3的一个新增的功能,用来指定元素的长度.比如说,你可以使用calc()给元素的border.margin.pad ...
 - python3 如何使用ip、爬虫
			
使用urllib.request.random模块,不说了贴代码 url="*"; iplist=['70.254.226.206:8080'];proxy_support=url ...
 - android环境配置
			
1.计算机右键点击属性 2.点击高级系统设置 3.选择高级——>选择环境变量 4.点击系统变量下的新建 1)新建ANDROID_HOME:你的sdk所在的目录 2)新建JAVA_HOME:C:\ ...
 - linux的一些与关机和重启相关的命令
			
runlevel 查看系统级别 cat /etc/inittab 修改系统默认运行级别 logout 退出登录
 - css中的大小、定位、轮廓相关属性
			
css中的大小.定位.轮廓相关属性 1.通过height.width属性控制组件大小 height:高度,可以设置任何有效的距离值: width:宽度,可以设置任何有效的属性值: max-height ...