组件支持设置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://url.cn/KISPum

购买链接:

http://item.taobao.com/item.htm?spm=a1z10.1.w4004-4958980042.12.gASsff&id=36468591940



[2014.01.27]wfGifAnimator 动画GIF组件 3.0的更多相关文章

  1. [2014.01.27]wfRadar 雷达图组件 2.5

    全新开发的雷达图组件--wfRadar,使用简单,功能强大,图像处理效果极佳. 组件支持多种图片格式,包括bmp,jpg,gif,wmf,emf,ico,png,pcx,tif,tga,pcx,dcx ...

  2. [2014.01.27]wfTextImage 文字图像组件 1.6

    全新开发的文字转图像组件--wfTextImage,使用简单,功能强大,图像处理效果极佳.     将大段的文本内容转换成GIF图片.     有效防止文字内容被复制抄袭,有效保护文字资料.      ...

  3. [2014.01.27]wfPng 水印贴图组件 2.1

    支持载入bmp,jpg,gif,png四种格式等. 支持图片水印使用png格式,支持区域透明,半透明的png图片. 支持图片缩放. 支持画线.画矩形.画椭圆,画正圆等图形. 支持在图片上输出文字. 能 ...

  4. [2014.01.27]wfChart 统计图组件 5.6

    本组件支持多种样式图表,包括柱型图.横柱型图.曲线图.饼图.点图.区域图.     可选择的8大主题风格,且主题可再配置,在加快开发的同时又提供更好的图像效果.     组件图表提供两种输出接口,包括 ...

  5. [2014.01.27]wfImage 图像处理组件 3.3

    组件支持多种图片格式,包括bmp,jpg,gif,wmf,emf,ico,png,pcx,tif,tga,pcx,dcx等. 组件提供两种输出接口,包括保存,直接显示(您再也不用定时清理那些临时的垃圾 ...

  6. [2014.01.27]wfPrintOcx 票据打印控件 v5.3

    支持选择打印机,并自动记忆选择的打印机. 适合打印各类票据格式. 支持画正方形.长方形.圆形.椭圆.横线.竖线.HTTP图片. 支持数字金额转换成中文大写金额. 可以设置固定宽度的文字自动换行. 组件 ...

  7. [2014.01.27]WFsoft.wfLibrary.wfVerifyImage 1.8

    全新开发的验证码图片控件--WFsoft.wfLibrary.wfVerifyImage,使用简单,功能强大.     完全支持.net 2.0编写,对下一代操作系统平稳过渡.     同时支持.ne ...

  8. [2014.01.27]WFsoft.wfLibrary.wfIniFile 1.5

    完全支持.net 2.0编写,对下一代操作系统平稳过渡.     不使用[DllImport("kernel32")]的方式,完全自主的.net 2.0自主解析.    完整支持键 ...

  9. [2014.01.27]WFsoft.wfWebCtrl.wfPage 5.9

    wfPage多功能.Net翻页组件,使用简单,功能强大. 提供"首页","上一页","下一页","末页","转 ...

随机推荐

  1. xlwt写入中文操作不成功,提示UnicodeDecodeError: ascii codec can't decode byte ...

    打开xlwt包里的Workbook.py文件,修改Workbook类的__init__方法 将 def __init__(self, encoding='ascii', style_compressi ...

  2. Oil Deposits

    Oil Deposits Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Tota ...

  3. block,inline和inline-block概念和区别(转)

    转自  http://www.cnblogs.com/KeithWang/p/3139517.html 总体概念 block和inline这两个概念是简略的说法,完整确切的说应该是 block-lev ...

  4. C#通过WatiN操作页面中内嵌的Iframe

    通过WatiN.Core.Broswer.Frame()方法来获取iframe对象,之后的容器就是frame,然后进行操作. 下面的例子是登录QQ空间的: Frame frame = browser. ...

  5. 开源免费天气预报接口API以及全国所有地区代码!!(国家气象局提供) 【转】

    国家气象局提供的天气预报接口 接口地址: http://www.weather.com.cn/data/sk/101010100.html http://www.weather.com.cn/data ...

  6. ubuntu samba 服务器设置

    安装 SAMBA 组件 sudo apt-get install samba smbfs smbclient ubuntu 14.04 使用以下方式安装: ? 1 2 3 4 5 6 7 若之前有安装 ...

  7. SQLALchemy(连表)、paramiko

    本节内容:

  8. mac上使用imagealpha命令对图片进行压缩批处理

    #! /bin/bash #BASE_DIR="/Users/jiading/Documents/basepng"; #OUTPUT_DIR="/Users/jiadin ...

  9. C++中 vector(容器)的用法

    vector(向量): C++中的一种数据结构,确切的说是一个类.它相当于一个动态的数组,当程序员无法知道自己需要的数组的规模多大时,用其来解决问题可以达到最大节约空间的目的. 用法: 1.文件包含: ...

  10. Ajax作用、及Ajax函数的编写

    关于Ajax 指的是异步 (Asynchronous JavaScript and XML) <异步的javascript和XML> 1. Ajax并非缩写词,而是由Jesse James ...