Chromium嵌入式框架

Chromium嵌入式框架(Chromium Embedded Framework),简称CEF,是一个开源软件框架,用于在另一个应用软件中嵌入Chromium网页浏览器。这使得开发者能够将网页浏览功能添加到他们的应用程序中,以及使用HTMLCSSJavaScript创建应用程序的用户界面(或其部分内容)。

Chromium Embedded Framework
開發者Marshall Greenblatt
首次发布2009年6月1日,​15年前​(2009-06-01
当前版本
  • 3
編輯維基數據鏈接
源代码库 編輯維基數據鏈接
编程语言C++
操作系统
类型軟體框架, 网页浏览器
许可协议BSD
网站bitbucket.org/chromiumembedded/cef

CEF可运行在LinuxmacOSWindows上。它拥有多种语言绑定,包括CC++GoJavaPython

概述

Chromium嵌入式框架(Chromium Embedded Framework,简称CEF)有两个版本:CEF 1和CEF 3。[1] 在Chromium Content API出现后,CEF 2的开发被放弃。[2]

CEF 1是基于Chromium WebKit API的单进程实现。它不再被积极开发或支持。[3]

CEF 3是基于Chromium Content API的多进程实现,其性能类似于Google Chrome。[4] 它使用异步消息在主应用程序进程和一个或多个渲染进程(Blink + V8 JavaScript引擎)之间进行通信。它支持PPAPI插件和扩展,无论是内部的(PDF查看器)还是外部可加载的。单进程运行模式不被支持,但仍然存在;目前仅用于调试目的。[5]

2019年3月16日,CEF的版本编号方式随着CEF 73.1.3+g46cf800+chromium-73.0.3683.75的发布而改变。其上一個发布是在2019年3月14日,版本为CEF 3.3683.1920.g9f41a27。这两个版本都基于Chromium 73.0.3683.75,但新的版本编号使主要数字与其基于的Chromium主要版本号相同。

CEF附带了一个名为CefClient的示例应用程序,该应用程序用C++编写,使用WinAPICocoaGTK(取决于平台),包含各种功能的演示。[6][7] 新版本包括一个名为CefSimple的示例应用程序,以及一个附带的教程,展示了如何使用CEF 3创建一个简单的应用程序。[8] 相關文件可以在"include"資料夾內的標頭檔,[9][10]或是在其官方wiki上找到。[11]

支持的语言

基础的CEF框架包括对C和C++编程语言的支持,但也有外部项目为其他语言提供绑定:

  • Delphi (CEF1) - DCEF 1[12]
  • Delphi (CEF3) - DCEF 3[13]
  • Delphi (CEF3) - CEF4Delphi[14]
  • Delphi (CEF3) - WebKitX CEF3 ActiveX
  • Dyalog APL (CEF3) - HTMLRenderer[15]
  • Free Pascal (CEF3) - fpCEF3[16]
  • Go (CEF3) - CEF2go[17]
  • Java (CEF3) - Java Chromium Embedded[18]
  • .NET (CEF1, CEF3) - CefSharp[19]
  • .NET (CEF1) - CefGlue[20]
  • .NET/Mono (CEF3) - Xilium.CefGlue[21]
  • .NET (CEF3) - ChromiumFX[22]
  • .NET (CEF3) - WebKitX CEF3 ActiveX
  • Python (CEF1, CEF3) - CEF Python[23]
  • Swift (CEF3) - CEF.swift[24]
  • Visual Basic 6 (CEF3) - WebKitX CEF3 ActiveX[25]
  • Visual FoxPro (CEF3) - WebKitX CEF3 ActiveX
  • PowerBuilder (CEF3) - WebKitX CEF3 ActiveX
  • Ruby (通过'win32ole'库) (CEF3) - WebKitX CEF3 ActiveX
  • Visual Basic for Applications 2003/2007/2010/2015/2016 (VBA, Access, Excel) (CEF3) - WebKitX CEF3 ActiveX
  • Microsoft Visual Studio .NET 2010/2015/2017 (VB.Net, C#, C++, 32位和64位) (CEF3) - WebKitX CEF3 ActiveX
  • Xojo (适用于Windows应用程序,32位和64位) (CEF3) - WebKitX CEF3 ActiveX
  • Qt (任何Windows版本,仅适用于32位) (CEF3) - WebKitX CEF3 ActiveX
  • CodeTyphon Studio - package pl_CEF
  • Embarcadero RAD Studio (VCL C++) (CEF3) - WebKitX CEF3 ActiveX
  • Broadcom CA PLEX (VBScript / C++) (CEF3) - WebKitX CEF3 ActiveX
  • YallFramework (YS /WS ) (FF213 - WebKitX CEF57 ActiveX)

使用CEF的应用程序

另请参阅

参考资料

  1. ^ 版本 - CEF架构概览. [2023-11-23]. (原始内容存档于2020-02-11). 
  2. ^ Content API - Chromium项目. 
  3. ^ CEF1退役计划. 
  4. ^ CEF 3 架构 - CEF wiki页面. [2023-11-23]. (原始内容存档于2020-02-11). 
  5. ^ 单进程 - 进程模型- Chromium项目. [2023-11-23]. (原始内容存档于2018-12-08). 
  6. ^ CEF Git: 1364/cef1/tests/cefclient/. 
  7. ^ CEF Git: master/tests/cefclient/. 
  8. ^ CefSimple教程. 
  9. ^ CEF Git: /1364/cef1/include/. 
  10. ^ CEF Git: /master/include/. 
  11. ^ CEF Wiki Pages. 
  12. ^ delphichromiumembedded – Delphi Chromium Embedded – Google项目托管. [2012-12-26]. (原始内容存档于2012-12-25). 
  13. ^ dcef3 – Delphi Chromium Embedded 3 – Google项目托管. [2012-12-26]. (原始内容存档于2012-12-25). 
  14. ^ GitHub - salvadordf/CEF4Delphi: CEF4Delphi是一个开源项目,用于在Delphi制作的应用程序中嵌入基于Chromium的浏览器。. github.com. [2017年2月25日] (英语). 
  15. ^ HTMLRenderer 用户指南 (PDF). dyalog.com. [2019年8月1日] (英语). 
  16. ^ Free Pascal的Chromium Embedded Framework. GitHub. [2017-01-31]. 
  17. ^ Go语言的基于HTML 5的GUI工具包. GitHub. [2014-02-06]. 
  18. ^ javachromiumembedded – Chromium Embedded Framework (CEF)的Java包装器. 
  19. ^ chillitom/CefSharp · GitHub. Github.com. [2012-12-26]. 
  20. ^ fddima / CefGlue / wiki / 首页 — Bitbucket. Bitbucket.org. 2012-08-21 [2012-12-26]. 
  21. ^ xilium / Xilium.CefGlue / wiki / 首页 — Bitbucket. Bitbucket.org. 2012-10-10 [2012-12-26]. [永久失效連結]
  22. ^ ChromiumFX - .NET的Chromium Embedded Framework (CEF)绑定. [2015-03-21]. (原始内容存档于2019-02-20). 
  23. ^ cefpython – Python绑定Chrome / Chromium Embedded Framework (CEF) – Google项目托管. [2012-12-26]. (原始内容存档于2012-12-25). 
  24. ^ CEF.swift – Swift绑定Chromium Embedded Framework (CEF). GitHub. 6 December 2021. 
  25. ^ WebKitX CEF3 ActiveX – Visual Studio 2015 C++11 MFC/ATL ActiveX for VB6. 
  26. ^ Adobe使用Google Chromium嵌入式框架进行Edge工具 | Tim Anderson's IT Writing. 2012年9月27日 [2022年12月2日] (美国英语). 
  27. ^ Dreamweaver中的CEF集成. [2023-11-23]. (原始内容存档于2014-06-27). 
  28. ^ Bitdefender Total Security. 
  29. ^ Eve Launcher – Evelopedia. [2013年3月4日]. (原始内容存档于2015年5月28日). 
  30. ^ League客户端更新的架构. Riot Games Engineering. [2017年3月21日]. (原始内容存档于2018年7月11日). 
  31. ^ 如何向您的应用程序添加Web浏览器. LiveCode. [2015年11月10日]. 
  32. ^ Microsoft PowerBI. Microsoft. [2019年2月22日]. (原始内容存档于2019年5月27日). 
  33. ^ obs-browser, OBS Project, 2021-10-21 [2021-10-22] 
  34. ^ Second Life 4.0.0.305703 Release Notes. 2015年10月25日 [2016年4月7日]. 
  35. ^ Sling TV – 随时随地观看直播电视节目. [2015年8月27日]. 
  36. ^ Spotify的开源项目. [2016年3月2日]. (原始内容存档于2016年3月7日). 
  37. ^ Chromium Embedded Framework. developer.valvesoftware.com. Last edited on 2023年6月15日. [2023年7月27日]. [失效連結]
  38. ^ Derivative WebRender TOP Documentation. [2022年12月2日]. (原始内容存档于2023年12月9日). 

外部链接