为编程爱好者分享易语言教程源码的资源网
好用的代理IP,游戏必备 ____广告位招租____ 服务器99/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器
好用的代理IP,游戏必备 ____广告位招租____ 服务器低至38/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器

网站首页 > 易语言相关 > 易语言模块源码 正文

miniblink浏览器模块(含源码)18-08-14

三叶资源网 2018-11-19 16:34:17 易语言模块源码 8047 ℃ 30 评论

miniblink是什么?

Miniblink是一个追求极致小巧的浏览器内核项目,全世界第三大流行的浏览器内核控件。

其基于chromium最新版内核,去除了chromium所有多余的部件,只保留最基本的排版引擎blink。

Miniblink保持了10M左右的极简大小,是所有同类产品最小的体积,同时支持windows xp、npapi。


为什么要做miniblink?

市面上作为嵌入的组件的可用的浏览器内核,不外乎这几个:webkit、cef、nwjs、electron。


cef:优点是由于集成的chromium内核,所以对H5支持的很全,同时因为使用的人也多,各种教程、示例,资源很多。但缺点很明显,太大了。最新的cef已经夸张到了100多M,还要带一堆的文件。同时新的cef已经不支持xp了(chromium对应版本是M49)。而且由于是多进程架构,对资源的消耗也很夸张。如果只是想做个小软件,一坨文件需要带上、超大的安装包,显然不能忍受。


nwjs,或者最近大火的electron:和cef内核类似,都是chromium内核。缺点和cef一模一样。优点是由于可以使用nodejs的资源,同时又自带了各种api的绑定,所以可以用的周边资源非常丰富;而基于js的开发方案,使得前端很容易上手。所以最近N多项目都是基于nwjs或electron来实现。例如vscode,atom等等。


原版webkit:现在官网还在更新windows port,但显然漫不在心,而且最新的webkit也很大了,超过20几M。最关键的是,周边资源很少,几乎没人再基于webkit来做开发。同时由于windows版的saferi已经停止开发了,所以用webkit就用不了他的dev tools了。这是个大遗憾。



WKE:这是个很老的webkit内核的裁剪版了。小是小,但bug太多了。


那么关键点来了,使用miniblink有啥好处呢??

首先,miniblink对大小要求非常严格。原版chromium、blink里对排版渲染没啥大用的如音视频全都被砍了,只专注于网页的排版和渲染。甚至为了裁剪大小,我不惜使用vc6的crt来跑mininblink(见我上篇文章)。这个也算前无古人后无来者了。


其次,miniblink紧跟最新chromium,这意味着chromium相关的资源都可以利用。在未来的规划里,我是打算把electron的接口也加上的,这样可以无缝替换electron。使用miniblink的话,开发调试时用原版electron,发布的时候再替换掉那些dll,直接可以无缝切换,非常方便。


miniblink如何使用?

Miniblink导出了electron、WKE的接口,可以直接无缝替换现有的electron、WKE项目。

早期miniblink还导出了CEF接口,不过现在已被废弃。


miniblink有个小demo,从demo里可以看到,brackct这个基于cef的开源编辑器,已经顺利由miniblink跑起来了。现在electron的接口已做好,vscode跑起来了。


更详细的使用文档见本页其他文章。


miniblink如何裁剪到这么小?

这个比较复杂了。主要就是把blink从chromium抽离了出来,同时补上了cc层(硬件渲染层)。现在的blink,已经不是当年的那个webkit了,渲染部分全走cc层,复杂无比。我这大半年都在重写他那个蛋疼又复杂的cc层。


和webkit比,miniblink架构有什么优势

现在的webkit版本,已经比miniblink落后太多了。blink一直在加入各种极富创造力和想象力的功能、组件。例如,blink早就加入多线程解析html token、blink gc回收器、多线程录制回放渲染机制。这些能让blink的解析渲染速度极大提升。下一次,我会先开源出blink gc组件,这东西很有意思,在c++里硬是搞出了一个垃圾回收机制,能让你像写java一样写c++。

@18574509150


文件下载


来源:三叶资源网,欢迎分享,公众号:iisanye,(三叶资源网⑤群:21414575

已有30位网友发表了看法:

  • 三叶资源网

    三叶资源网  评论于 [2018-11-19 16:41:01]  回复

    kyozy:
    虽然我无所谓,但是楼主也不问问我,也不在文章里面注明一下。
    顺便说一下,这是龙泉寺扫地僧的miniblink项目,我只是封装了调用DLL模块。
    github地址:https://github.com/weolar/miniblink49
    全新官网:https://weolar.github.io/miniblink/

  • 娱乐网

    娱乐网  评论于 [2019-05-19 09:19:48]  回复

    blink内核 易语言

  • 易语言

    易语言  评论于 [2020-03-04 17:20:37]  回复

    易语言浏览器模块

  • 易语言

    易语言  评论于 [2020-04-14 12:07:02]  回复

    易语言浏览器模块

  • 易语言

    易语言  评论于 [2020-06-05 23:33:03]  回复

    miniblink易语言

  • 访客

    访客  评论于 [2020-07-09 23:50:14]  回复

    易语言浏览器模块

欢迎 发表评论:

百度站内搜索
关注微信公众号
三叶资源网⑤群:三叶资源网⑤群

网站分类
随机tag
10086登录手动记牌快看点视频上传PHP服务端注册表操作WORD文件加图片Galanz批量注册后台截图常量支持库数据库自动审核进群鼠标源码excel表bitmap火山PC开发平台YY正则表达式工具自动更新软件拼多多滑块验证脚本引擎
最新评论