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日). 

外部連結