• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

[WindowsMobile]C#实现GIF图片播放

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

C#实现GIF图片播放

总结了四种方式:

1. 使用WebBrowser控件

2. 使用微软为Wince补充的AnimationControl控件

3. 使用网络上流传的ImageCtrl.dll

4. 仿照Win32代码用C#解码GIF播放

1.使用WebBrowser控件

webBrowser = newSystem.Windows.Forms.WebBrowser();

webBrowser.Url =new System.Uri("gif文件");

由于WebBrowser控件会响应很多消息,例如长按消息弹出菜单,所以在界面制作上是有缺陷的。

2.使用微软为Wince补充的AnimationControl控件

下载安装AnimationControl.msi 里面有示例。

3.使用网络上流传的ImageCtrl.dll

这个也是在Form上创建一个自己实现的ImageCtrl控件,然后在控件上显示gif图片,这个控件倒是没有响应消息的缺陷,但是对GIF图片的可控性不好。

4.仿照Win32代码用C#解码GIF播放

解码GIF有两种方式:

1>使用gif89a (这种方式不够完美,有缺陷)

2>使用IImage Com接口

在C#中如何使用IImage,网络上有一个AlphaExample源码,里面导出了部分IImagingFactory接口,但是解码GIF的接口并没有全部导出。OpenNETCF是可以完全使用IImage接口的。但是在解码GIF过程中要使用的一些对象还是无法得到,所以最终放弃这种方式。

我最后采用的方式是使用我用Win32写好的C++代码导出DLL,在C#中使用DLL接口来播放GIF。

调用过程中遇到一些问题,比如:形参的排放顺序会影响实参的传递,指针参数需要使用ref声明,等等。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
.NetC#RSA签名和验签发布时间:2022-07-14
下一篇:
C#:判断当前线程所处状态&委托发布时间:2022-07-14
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap