在HTML中给PPAPI插件配置参数
Posted foruok
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在HTML中给PPAPI插件配置参数相关的知识,希望对你有一定的参考价值。
foruok原创,如需转载请关注foruok的微信订阅号“程序视界”联系foruok。
在html中,可以通过embed或object标签来配置插件。使用embed类似下面这样:
<embed id="myplugin" type="application/x-ppapi-myplugin" width="1200px" height="520px">
使用object类似下面这样:
<object id="myplugin" type="application/x-ppapi-myplugin" width="1200px" height="520px" custom="i am custom">
<param name="tang" value="desktop" />
</object>
PPAPI插件实例化时,可以收到在embed或object中配置的参数。所有嵌在标签中的属性(比如id=”myplugin”)、param指定的参数,都会以name-value对的形式传递给PPP_Instance接口的DidCreate方法。该方法原型如下:
PP_Bool (*DidCreate)(PP_Instance instance,
uint32_t argc,
const char* argn[],
const char* argv[]);
其中,argc是CEF搜集的embed或object中的参数个数,argn数组是参数名字,argv数组是参数的值。代码中可以这样处理参数:
PP_Bool Instance_DidCreate(PP_Instance instance,
uint32_t argc,
const char* argn[],
const char* argv[])
{
...
char szLog[256] = { 0 };
sprintf_s(szLog, 256, "PPAPI Got %d params\\r\\n", argc);
OutputDebugStringA(szLog);
for (int i = 0; i < argc; i++)
{
sprintf_s(szLog, 256, "name=%s, value=%s\\r\\n", argn[i], argv[i]);
OutputDebugStringA(szLog);
}
...
}
针对前面的object标签示例,使用DebugView可能看到下面的输出:
Ok,能处理参数,插件就可以定制化了。
其他参考文章:
- CEF Windows开发环境搭建
- CEF加载PPAPI插件
- VS2013编译最简单的PPAPI插件
- 理解PPAPI的设计
- PPAPI插件与浏览器的交互过程
- Windows下从源码编译CEF
- 编译PPAPI的media_stream_video示例
- PPAPI插件的绘图与输入事件处理
- 在PPAPI插件中创建本地窗口
- PPAPI插件与浏览器的通信
- Windows下从源码编译Skia
- 在PPAPI插件中使用Skia绘图
- 加载DLL中的图片资源生成Skia中的SkBitmap对象
- PPAPI+Skia实现的涂鸦板
- PPAPI中使用Chromium的3D图形接口
- PPAPI中使用OpenGL ES绘图
- CEF中JS与C++交互
- CEF中Browser进程与Render进程间通信
- Chromium与CEF的多进程模型及相关参数
- PPAPI与Browser间使用AsyncIPC通信
以上是关于在HTML中给PPAPI插件配置参数的主要内容,如果未能解决你的问题,请参考以下文章