Chromium Embedded Framework (сокр. CEF) — открытый фреймворк для встраивания в приложение браузерного движка из проекта Chromium. Позволяет разработчику добавлять в приложение элементы браузера, использовать GUI на основе HTML или использовать движок в качестве рендера HTML или запуска JavaScript в проекте на C++. Есть языковые прослойки[англ.] для Си, Object Pascal, Go, Java, Visual Basic, Python.
Chromium Embedded Framework | |
---|---|
Тип | фреймворк и библиотека виджетов[вд] |
Разработчики | Google и Гринблат, Маршалл[вд] |
Написана на | C++ |
Операционные системы | macOS, Windows и Linux |
Первый выпуск | 2008 |
Аппаратные платформы | X86 и x86-64 |
Последняя версия |
|
Репозиторий | bitbucket.org/chromiumem… |
Лицензия | модифицированная лицензия BSD[вд] |
Сайт | bitbucket.org/chromiumem… |
Описание
правитьНа данный момент существует две версии CEF: CEF 1 и 3[1]. Разработка CEF 2 была прекращена в связи с появлением Chromium Content API.
CEF 1 — это однопоточная реализация на Chromium WebKit API. На данный момент не поддерживается и не разрабатывается[2].
CEF 3 — это многопоточная реализация, основанная на Chromium Content API[3]. Использует асинхронные MOM, чтобы связывать приложение с Blink или V8. Поддерживает плагины PPAPI и расширения Chrome. Однопоточное выполнение недоступно, но может быть включено в целях отладки[4].
Вместе с фреймворком можно получить и простое приложение CefClient, написанное на C++ с использованием WinAPI / Cocoa / GTK+ в зависимости от платформы и показывающее демо с некоторыми простыми функциями[5]. Позже было добавлено приложение CefSimple, у которого есть сопровождающее руководство по использованию CEF 3[6].
Известные реализации
править- DCEF 1 — Delphi
- DCEF 3 — Delphi
- CEF4Delphi — Delphi
- WebKitX CEF3 ActiveX
- HTML Renderer — Dyalog APL
- fpCEF3 — Free Pascal
- CEF2go — Go
- Java Chromium Embedded — Java
- CefSharp — .NET
- CefGlue (недоступная ссылка) — .NET
- Xilium.CefGlue — .NET/Mono
- ChromiumFX Архивная копия от 20 февраля 2019 на Wayback Machine — .NET
- CEF Python — Python
- CEF.swift — Swift
См. также
правитьПримечания
править- ↑ chromiumembedded / cef / wiki / Architecture # Versions (англ.). Дата обращения: 12 декабря 2018. Архивировано 11 февраля 2020 года.
- ↑ chromiumembedded / cef / wiki / Architecture # CEF1 (Discontinued) (англ.). Дата обращения: 12 декабря 2018. Архивировано 11 февраля 2020 года.
- ↑ chromiumembedded / cef / wiki / Architecture # CEF3 (англ.). Дата обращения: 12 декабря 2018. Архивировано 11 февраля 2020 года.
- ↑ Process Models - The Chromium Projects # Single process (англ.). Дата обращения: 12 декабря 2018. Архивировано 8 декабря 2018 года.
- ↑ chromiumembedded / cef / source / tests / cefclient (англ.). Дата обращения: 12 декабря 2018.
- ↑ chromiumembedded / cef / source / tests / cefsimple (англ.). Дата обращения: 12 декабря 2018.
- ↑ Open Source @ Spotify (англ.). Дата обращения: 12 декабря 2018. Архивировано 24 апреля 2018 года.