[发明专利]一种cocos2dx嵌入cef实现透明网页的方法有效
申请号: | 201980003323.7 | 申请日: | 2019-12-27 |
公开(公告)号: | CN111108475B | 公开(公告)日: | 2021-03-09 |
发明(设计)人: | 陈其标;罗婷 | 申请(专利权)人: | 威创集团股份有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445;G06F8/38;G06F16/957 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王娇娇 |
地址: | 510670 广东省广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 cocos2dx 嵌入 cef 实现 透明 网页 方法 | ||
1.一种cocos2dx嵌入cef实现透明网页的方法,其特征在于,包括以下步骤:
S1:在cocos2dx中创建并显示网页层,开启所述网页层的刷新定时器,创建浏览器对象;
S2:创建cef事件处理对象,注册所述事件处理对象到所述浏览器对象;
S3:启动cef消息循环,分发处理消息,将渲染后得到的RGBA的位图数据回调给所述网页层,所述网页层将所述数据缓存到队列尾部;
S4:所述网页层在刷新定时器回调中检测缓存队列中是否有网页数据,若无数据,则重复检测;若有数据,则判断背景精灵是否已创建,若未创建,则使用所述数据创建背景精灵和初始化纹理,若已创建,则使用所述数据更新纹理;
S5:所述网页层检测是否有键盘、鼠标事件触发,若有,则重组消息发送给cef;若无,则执行S4。
2.根据权利要求1所述的cocos2dx嵌入cef实现透明网页的方法,其特征在于,在S1之前还包括:初始化cef环境,创建全局CefApp对象,开启离屏渲染,调用CefInitialize完成初始化。
3.根据权利要求1所述的cocos2dx嵌入cef实现透明网页的方法,其特征在于,S1中开启所述网页层的刷新定时器具体包括:调用ScheduleUpdate开启update定时器。
4.根据权利要求1所述的cocos2dx嵌入cef实现透明网页的方法,其特征在于,S1中创建浏览器对象具体包括:调用CefBrowserHost::CreateBrowser创建浏览器对象。
5.根据权利要求1所述的cocos2dx嵌入cef实现透明网页的方法,其特征在于,S3中将渲染后得到的RGBA的位图数据回调给所述网页层进一步包括:cef通过OnPaint回调出渲染后得到的RGBA的位图数据,通知网页层有数据回调。
6.根据权利要求1所述的cocos2dx嵌入cef实现透明网页的方法,其特征在于,在S3之前还包括:cef通过所述事件处理对象回调出网页显示的大小和位置。
7.根据权利要求1所述的cocos2dx嵌入cef实现透明网页的方法,其特征在于,S5中所述网页层检测是否有键盘、鼠标事件触发进一步包括:所述网页层注册mouse down、move和up事件的监听,将收到的坐标封装成windows鼠标消息事件,调用cef的发送鼠标消息接口传递给cef内部响应。
8.根据权利要求1所述的cocos2dx嵌入cef实现透明网页的方法,其特征在于,S5中所述网页层检测是否有键盘、鼠标事件触发还进一步包括:所述网页层重定向主窗口的窗口过程,检测到键盘事件时,调用cef的发送键盘消息接口传递给cef内部响应。
9.根据权利要求1所述的cocos2dx嵌入cef实现透明网页的方法,其特征在于,S3中将渲染后得到的RGBA的位图数据回调给所述网页层之前还包括:判断是否有位图数据回调,当有位图数据时,将所述位图数据缓存入队列。
10.根据权利要求1所述的cocos2dx嵌入cef实现透明网页的方法,其特征在于,在S5步骤之后还包括:关闭主窗口时,发送退出消息给cef,等待cef退出循环,调用CefShutdown释放cef环境。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于威创集团股份有限公司,未经威创集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201980003323.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:预测结构化照射参数
- 下一篇:一种基于语音降噪的声纹识别方法和相关装置