Richedit插入动态Gif的实现

Dev17.1版本RichEditControl 表格插入与合并,插入图片 根据bookmarks插入文字/图片/表格,自定义插入文字/图片/表格,自定义文字样式。表格合并。 立即下载

最近在做IM软件,需要实现向Richedit插入表情,表情是动态的GIF图像。

google 查找相关技术,文章如下

How to insert a bitmap into an RTF document using the RichEdit control in Visual C++ 6.0
http://support.microsoft.com/default.aspx?scid=kb;en-us;220844

Animated Emoticons like those in MSN Messenger(英文版)
http://www.codeproject.com/KB/edit/AnimatedEmoticon.aspx

Animated Emoticons like those in MSN Messenger(中文版)
http://blog.csdn.net/dTianx/archive/2004/11/17/184949.aspx

DynamicGif作者blog
http://blog.csdn.net/kql01

 

第一个链接是微软提供的部分代码,只能用于插入BMP图片。使用了OleCreateFromFile创建的ole对象。

第二个、第三个链接都是dTianx写的,使用QQ的ImageOle.dll创建了ole对象。提供全部源代码,但ImageOle没有相关代码,在项目中,不敢使用,最近腾讯总是状告员工啥的,怕也状告我...。

第四个链接是一牛自己做的一个控件,导出函数InsertGifToRichedit2A可以方便地插入任意GIF。只提供DLL文件。
我对这4个方法逐一试验,结果发现这些方案都不可靠。

首先第一个不用说,只能插入BMP图片,不符合我们的要求,但这段代码已经可以让我们了解了插入一个OLE对象的全部步骤。

第三个DynamicGif使用导出函数InsertGifToRichedit2A,方便地插入了任意Gif图片,但是我发现他放出的这版本有问题,这个问题发生在拖动滚动条的时候,richedit闪动非常厉害。

 

处于无赖,自己也开发了个OLE组件。目前已经达到了DynamicGif,不过也同样存在着拖动滚动条,richard会闪的非常厉害,不过目前已经找到解决方案,需要进一步完善。

 

代码下载: http://download.csdn.net/source/1503714

RichEdit图片 立即下载

相关推荐

RichEdit插入图片,文字以及美化设置

RichEdit插入图片,文字以及美化设置

QT中使用HTML 格式输出log到richEdit

void CMainForm::logMessageProc(int type, QString txt) { QString html = "<p><font color=\"%1\">%2<br/></font></p>"; switch (type) { case 1: html = html.arg("g

weixin_42288671的博客 667

RichEdit插入并显示PNG、JPG、BMP等图片及图文混排完整示例代码

近一周的工作成果了: 默认编译环境VS2019+MFC RichEdit控件显示BMP图片 代码示例: //在RichEdit中图文混排显示资源中位图 void CRichEditTestDlg::OnBnClickedButton1() { // TODO: 在此添加控件通知处理程序代码 ..... } //在RichEdit中显示PNG、JPG、BMP等图片 void CRichEditTestDlg::OnBnClickedButtonImg() { // TODO: 在此添加控件通知处理程序代码 CFile file; file.Open(L"\\RichEditTest\\res\\1.png", CFile::modeRead); int l=file.GetLength(); char* pBuf = new char[l]; file.Read(pBuf, l); m_ctRichEdit.InsertBitmap2(pBuf, l); }

实现RichEdit(一)---如何在EditText中插入图片表情

前言:现在软件开发用到了这个功能,对于不会的东东,难度都是比较大的,会的不难,难的不会,反正就是学吧,这次总共分两篇,这篇讲解如何实现在EditText中插入图片,第二篇讲如何实现与服务器通信(PHP); 效果:   步骤: 1、我们为了将图片与更多的信息结合起来,所以我们采用XML的形式先将图片的各信息组织起来,保存在assets/brow.xml里 2、定义一个类

qq_23174861的博客 955

RichEditCtrl中添加图片和URL功能

最近在写一个工具,需要用到RichEditCtrl控件,这个控件需要支持图片和URL超链接功能。查看了Codeguru和codeproject网站中文章的描述,其中实现的主要部分代码如下。 if (FAILED(CoInitialize(NULL))) {  return ; } HBITMAP hBitmap =(HBITMAP)LoadImage   (NULL, str, IMA

Tommy(凌飞)的专栏 1431

也谈向Richedit插入动态Gif实现(转载)

<br /><br />http://www.deadc0de.com/archives/insert-gif-to-richedit.html#more-14<br /> <br />最近在做IM软件,需要实现Richedit插入表情,表情是动态GIF图像。<br />由于以前没有做过关于richedit的开发,百度了下,需要使用OLE技术。也就是说,插入图片都是一个OLE对象。而RICHEDIT则是一个OLE容器,相关链接如下。<br />How to insert a bitmap into a

PunC的专栏 2874

Richedit插入动态Gif实现

要做一个类似QQ表情的东西,用BCB6.0来做,本来这个工具也不是熟悉,用得多还是VC吧,难! 上网查了一下,因为要播放GIF文件,那个在CSDN说的几乎都是说用QQ的ImageOle来做,然后就是一大堆的链接,说哪里哪里有的,怎样引用法 但是版权啊 而且全都是05年的帖子,奇怪了,难道是百度的错,还是现在没有人做这个了 无耐,继续百度 google, 找到了一位哥们做的 类似 MSN

让软件普及到企业中去而奋斗终生 2448

也谈向Richedit插入动态Gif实现

http://www.deadc0de.com/archives/insert-gif-to-richedit.html#more-14 最近在做IM软件,需要实现Richedit插入表情,表情是动态GIF图像。由于以前没有做过关于richedit的开发,百度了下,需要使用OLE技术。也就是说,插入图片都是一个OLE对象。而RICHEDIT则是一个OLE容器,相关链接如下。

Richard的专栏 6480

Richedit插入动态Gif实现(关于QQ表情功能的制作)

最近希望做一个类似QQ表情的,能够插入图片和播放动画的RichEdit。找到了一位仁兄总结的比较好的资料,分享。 原文地址:http://www.cnblogs.com/tony-law/archive/2011/09/16/2178944.html 要做一个类似QQ表情的东西,用BCB6.0来做,本来这个工具也不是熟悉,用得多还是VC吧,难! 上网查了一下,因为要播放GIF文件,那

airbigboy的专栏 1893

richedit控件中插入动态GIF

这是CSDN的VC论坛上的一个老FAQ了。我在写自定义在RichEdit插入对象的图标(http://www.blogcn.com/user3/jiangsheng/blog/1319738.html)这片文章的时候就是想用这个技术做动画GIF的,但是怎么判断一个内嵌在RichEdit的对象是GIF这个问题一直没有解决。好在QQ附带的一个控件支持动画GIF,可以插入这个对象来解决问题。首先需

蒋晟的专栏 3713

基于Richedit的简单IM实现之一:界面部分

现在的IM软件有很多种,采用Richedit实现占用的资源比较少,并且richedit的开发也比较容易。在这篇文章中,主要讨论richedit的高级应用和dynamicGif控件的永久化存储、保存到文件等功能。dynamicGif控件进行了扩充,支持从流中创建对象和保存到文件。下面介绍如何保存控件中的文件:     BOOL SaveToFile( IOleObject* pOleObje

7581
上一篇: OpenFire增加使用内存
下一篇: GifOleControl 1.0.2 功能说明
happy hell
博客等级 码龄23年 135粉丝 179原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值