cef使用和说明文档:
- Tutorial https://bitbucket.org/chromiumembedded/cef/wiki/Tutorial
- General Usage https://bitbucket.org/chromiumembedded/cef/wiki/GeneralUsage
中文文档:
运行cef的依赖的文件
通过README.txt可知:
cef必须组件:
libcef.dll : 核心库
chrome_eld.dll :崩溃上报库
icudtl.dat :Unicode支持数据
v8_context_snapshot.bin、snapshot_blob.bin:V8快照数据
cef可选组件:
locales/ : 本地化资源
目录包括cef、chromium、blink使用的本地化资源。根据CefSettings.locale的值加载这个目录里的.pak文件。仅配置的本地化文件需要被发布。没有配置则使用默认的本地化“en-US”。没有这些文件,web组件可能会显示错误。
chrome_100_percent.pak、chrome_200_percent.pak、resources.pak
包括cef、chromium、blink使用的非本地化资源,没有时web组件可能会显示错误。
d3dcompiler_47.dll :支持Direct3D
支持GPU对HTML5的加速渲染
libEGL.dll、libGLESv2.dll
支持渲染HTML5
vk_swiftshader.dll、vk_swiftshader_icd.json、vulkan-1.dll
支持软件渲染HTML5,作为GPU加速关闭或者失败的备选
初始化cef参数
CefSettings //cef_settings_t
{
//这里只列出部分重要的参数,完整参数请查看源码
int no_sandbox; //设置1,不启动沙箱。沙箱可以保护用户不受不信任且可能存在恶意的Web内容。
cef_string_t browser_subprocess_path; //子进程可执行文件的路径(若为空则主进程会被启动),也可以使用命令行"browser-subprocess-path"代替
int multi_threaded_message_loop; //设置1,则启动browser进程消息循环在另一个线程,若为0,则必须调用CefDoMessageLoopWork去更新循环
int windowless_rendering_enabled; //设置1,则启动离屏渲染
int command_line_args_disabled; //设置1,则禁止进程启动时的命令行参数
cef_string_t cache_path; //全局浏览器缓存数据存储路径。若为空,则将以“隐名模式”创建,使用内存缓存,不会持久化到磁盘中。若不为空,则必须是root_cache_path或者其子目录
cef_string_t root_cache_path; //缓存根目录
cef_string_t user_data_path; //用户数据路径。Widevine CDM模块和拼写等用户数据所在的位置。若为空,则默认路径被使用:AppData\Local\CEF\User Data。
int persist_session_cookies; //设置1,则持久化会话cookies(未过期的)。|cache_path|在此时必须要指定,也可以用使用命令行"persist-session-cookies"
int persist_user_preferences; //设置1,则持久化用户参数为json文件。|cache_path|在此时必须要指定,也可以用使用命令行"persist-user-preferences"
cef_string_t locale; //本地化字符。若为空,则使用默认“en-US”,也可以使用命令行"lang"
cef_string_t log_file; //日志文件名。若为空,则默认为产生debug.log在主可执行文件目录,可使用命令行"log-file"
cef_log_severity_t log_severity; //日志等级。"verbose", "info","warning", "error", "fatal" or "disable"。 可使用命令行"log-severity"
cef_string_t resources_dir_path; //资源目录,若为空,则必须保持当前模块路径。可使用命令行"resources-dir-path"
cef_string_t locales_dir_path; //本地化目录,若为空,则必须保持当前模块路径。可使用命令行"locales-dir-path"
cef_color_t background_color; //背景颜色。在网页加载前或者未指定网页颜色时使用。
cef_string_t accept_language_list; //可接受的语言列表。逗号分隔不带空格,使用在"Accept-Language" HTTP header中。
}
cef和chromium版本号及html5功能支持查看:chrome://version
html5功能支持测试:http://html5test.com/