Chromium嵌入式框架
Chromium嵌入式框架(Chromium Embedded Framework),簡稱CEF,是一個開源的軟件框架,用於在另一個應用軟件中嵌入Chromium網頁瀏覽器。這使得開發者能夠將網頁瀏覽功能添加到他們的應用程式中,以及使用HTML、CSS和JavaScript創建應用程式的用戶界面(或其部分內容)。
![]() | |
開發者 | Marshall Greenblatt |
---|---|
首次發佈 | 2009年6月1日 |
當前版本 |
|
原始碼庫 | |
程式語言 | C++ |
作業系統 | |
類型 | 軟件框架, 網頁瀏覽器 |
許可協議 | BSD |
網站 | bitbucket |
CEF可運行在Linux、macOS和Windows上。它擁有多種語言綁定,包括C、C++、Go、Java和Python。
概述
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++編寫,使用WinAPI、Cocoa或GTK(取決於平台),包含各種功能的演示。[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的應用程式
- 4D – 關係數據庫管理系統和集成開發環境(IDE)
- Adobe[26]
- Adobe Acrobat
- Adobe Illustrator – 向量圖形編輯器
- Adobe Creative Cloud
- Adobe Dreamweaver – 使用CEF控制資源加載、導航和上下文菜單的Web開發工具[27] Adobe Chromium Embedded
- Adobe Edge Animate – 多媒體創作工具
- Adobe Edge Reflow – 網頁設計工具
- Adobe Brackets – 以前是封閉源的IDE,現為用於Web的開原始碼編輯器
- AIM – 在Windows上使用CEF的即時消息客戶端
- alt:V - 用於PC遊戲《俠盜獵車手V》的多人遊戲引擎
- Amazon Music Player – Amazon Music的官方媒體播放器
- AOL Desktop – 集成了AOL電子郵件和即時消息客戶端的Web瀏覽器
- Autodesk Inventor – 3D設計工具。自2015年版本以來,它使用CEF來實現「我的主頁」功能,允許用戶創建新的CAD文件並查看教程。
- Battle.net App – Battle.net的官方客戶端
- BeamNG.drive – 使用CEF渲染用戶界面
- Bitdefender Safepay Browser – Bitdefender軟件的一部分[28]
- Desura客戶端 – Desura的官方客戶端
- Dish World IPTV – 流媒體視頻平台
- Dyalog APL – 使用CEF進行其用戶命令
]HTML
、]Plot
和]APLCart
- Epic Games Launcher – Epic遊戲商城的官方客戶端
- Eve Online啟動器 – 星戰前夜的官方啟動器[29]
- ExpanDrive – 網絡文件系統客戶端
- Foxmail – Tencent的免費電子郵件客戶端
- GOG Galaxy – GOG.com的官方客戶端
- Google Web Designer – 創建交互式HTML5網站和廣告
- Grand Theft Auto Online – 用於PC遊戲《俠盜獵車手V》的多人遊戲引擎
- Intel AppUp Encapsulator – 英特爾應用商店軟件
- KKBOX – 流媒體音樂平台
- League of Legends啟動器 – 《英雄聯盟》的官方啟動器[30]
- LiveCode – 多平台應用程式開發軟件[31]
- Mailbird – Windows電子郵件軟件
- MATLAB – 使用CEF進行
uifigures
- MediaMan – 組織軟件
- Microsoft Power BI – 商業智能軟件[32]
- Minecraft啟動器 – 《我的世界》官方啟動器
- Multi Theft Auto – 用於PC遊戲《俠盜獵車手:聖安地列斯》的多人遊戲引擎
- OBS Studio 瀏覽器插件 - 實時流媒體軟件[33]
- PHP Desktop – 提供一種使用諸如PHP、HTML5、JavaScript和SQLite等Web技術開發原生桌面GUI應用程式的方法。
- PokerStars – 在線撲克棋牌室
- PTC Creo - Creo Parametric Chromium嵌入式瀏覽器
- QuarkXPress – JavaScript支持
- RAGE Multiplayer - 用於PC遊戲《俠盜獵車手V》的多人遊戲引擎
- Rockstar Games Launcher – Rockstar Games Social Club的官方客戶端
- 第二人生 – 在線虛擬世界[34]
- Sling TV – 由Dish Network運營的IPTV服務。[35]
- Spotify桌面客戶端 – 流媒體音樂平台[36]
- StarUML – UML模型編輯器
- Steam客戶端 – Valve的官方客戶端[37]
- 絕地要塞2 - 由Valve開發的視頻遊戲,使用Source引擎
- 騰訊QQ – 即時消息程序(其QPlus部分)和Web瀏覽器
- The Bat! – 由RitLabs為Microsoft Windows開發的電子郵件客戶端
- TouchDesigner - 創意開發平台[38]
- TOWeb – 響應式網站創建軟件
- Trend Micro Internet Security – 殺毒軟件
- Ubisoft Connect客戶端 – Ubisoft Connect的官方客戶端
- UBot Studio – 互聯網營銷和Web自動化軟件
- Uniface – Uniface運行時和開發環境
- Unity – 遊戲引擎
- Unreal Engine – 遊戲引擎
- Xojo – 在Windows上使用CEF的HTMLViewer控件
另請參閱
參考資料
- ^ 版本 - CEF架构概览. [2023-11-23]. (原始內容存檔於2020-02-11).
- ^ Content API - Chromium项目.
- ^ CEF1退役计划.
- ^ CEF 3 架构 - CEF wiki页面. [2023-11-23]. (原始內容存檔於2020-02-11).
- ^ 单进程 - 进程模型- Chromium项目. [2023-11-23]. (原始內容存檔於2018-12-08).
- ^ CEF Git: 1364/cef1/tests/cefclient/.
- ^ CEF Git: master/tests/cefclient/.
- ^ CefSimple教程.
- ^ CEF Git: /1364/cef1/include/.
- ^ CEF Git: /master/include/.
- ^ CEF Wiki Pages.
- ^ delphichromiumembedded – Delphi Chromium Embedded – Google项目托管. [2012-12-26]. (原始內容存檔於2012-12-25).
- ^ dcef3 – Delphi Chromium Embedded 3 – Google项目托管. [2012-12-26]. (原始內容存檔於2012-12-25).
- ^ GitHub - salvadordf/CEF4Delphi: CEF4Delphi是一个开源项目,用于在Delphi制作的应用程序中嵌入基于Chromium的浏览器。. github.com. [2017年2月25日] (英語).
- ^ HTMLRenderer 用户指南 (PDF). dyalog.com. [2019年8月1日] (英語).
- ^ Free Pascal的Chromium Embedded Framework. GitHub. [2017-01-31].
- ^ Go语言的基于HTML 5的GUI工具包. GitHub. [2014-02-06].
- ^ javachromiumembedded – Chromium Embedded Framework (CEF)的Java包装器.
- ^ chillitom/CefSharp · GitHub. Github.com. [2012-12-26].
- ^ fddima / CefGlue / wiki / 首页 — Bitbucket. Bitbucket.org. 2012-08-21 [2012-12-26].
- ^ xilium / Xilium.CefGlue / wiki / 首页 — Bitbucket. Bitbucket.org. 2012-10-10 [2012-12-26].[永久失效連結]
- ^ ChromiumFX - .NET的Chromium Embedded Framework (CEF)绑定. [2015-03-21]. (原始內容存檔於2019-02-20).
- ^ cefpython – Python绑定Chrome / Chromium Embedded Framework (CEF) – Google项目托管. [2012-12-26]. (原始內容存檔於2012-12-25).
- ^ CEF.swift – Swift绑定Chromium Embedded Framework (CEF). GitHub. 6 December 2021.
- ^ WebKitX CEF3 ActiveX – Visual Studio 2015 C++11 MFC/ATL ActiveX for VB6.
- ^ Adobe使用Google Chromium嵌入式框架进行Edge工具 | Tim Anderson's IT Writing. 2012年9月27日 [2022年12月2日] (美國英語).
- ^ Dreamweaver中的CEF集成. [2023-11-23]. (原始內容存檔於2014-06-27).
- ^ Bitdefender Total Security.
- ^ Eve Launcher – Evelopedia. [2013年3月4日]. (原始內容存檔於2015年5月28日).
- ^ League客户端更新的架构. Riot Games Engineering. [2017年3月21日]. (原始內容存檔於2018年7月11日).
- ^ 如何向您的应用程序添加Web浏览器. LiveCode. [2015年11月10日].
- ^ Microsoft PowerBI. Microsoft. [2019年2月22日]. (原始內容存檔於2019年5月27日).
- ^ obs-browser, OBS Project, 2021-10-21 [2021-10-22]
- ^ Second Life 4.0.0.305703 Release Notes. 2015年10月25日 [2016年4月7日].
- ^ Sling TV – 随时随地观看直播电视节目. [2015年8月27日].
- ^ Spotify的开源项目. [2016年3月2日]. (原始內容存檔於2016年3月7日).
- ^ Chromium Embedded Framework. developer.valvesoftware.com. Last edited on 2023年6月15日. [2023年7月27日].[失效連結]
- ^ Derivative WebRender TOP Documentation. [2022年12月2日]. (原始內容存檔於2023年12月9日).