分享

[跨浏览器插件开发技术之NPAPI]

 quasiceo 2012-12-23

[跨浏览器插件开发技术之NPAPI]External resources for plugin creation 插件创建的外部资源

分类: NPAPI 浏览器插件 插件开发 408人阅读 评论(0) 收藏 举报

目录(?)[+]

 [跨浏览器插件开发技术之NPAPI]

 

目录.Gecko Plugin API Reference Gecko引擎插件API参考手册
第一章.Plug-in Basics插件基础
第二章.Plug-in Development Overview插件开发概览
第三章.Initialization and Destruction 初始化和销毁
第四章.Drawing and Event Handling 绘图和事件处理
第五章.Streams 流
第六章.URLs 统一资源定位符
第七章.Memory 内存
第八章.Version,UI,and Status Infomation 版本,界面和状态信息
第九章.Plug-in Side Plug-in API插件端的插件API
第十章.Browser Side Plug-in API浏览器端插件API
第十一章.Scripting plugins脚本化插件
第十二章.Structures 结构
第十三章.Constants常量
第十四章.External resources for plugin creation插件创建的外部资源

首轮插件开发文档翻译工作暂告一段落,由于翻译仓促,加上本人水平有限,在整个翻译过程中肯定存在许多问题,如果您发现了问题,请在文章下面给我留言,我会尽快修正。希望通过大家和我的共同独立,将这套NPAPI 跨浏览器插件开发手册质量做好。

当然如果你有什么好的想法建议或者在阅读的过程中碰到什么问题,也可以通过留言的方式或者QQ方式和我联系。

QQ:715127899 

文章转载,请注明出处。

External resources for plugin creation 插件创建的外部资源

Frameworks and tools 框架和工具

There are several open source projects designed to assist with the creation of NPAPI plugins.  Please note that even when using these, it is still a good idea to have an understanding of what is going on under the hood, regardless of the level of abstraction provided.

这里有一些用来创建NPAPI插件的开源项目。请注意即使在使用这些时,也最好先理解底层是如何工作的,无论这一层提供了多好的抽象。

Framework: FireBreath 框架: FireBreath

Project home page 项目主页
Project history 项目历史
Description (from the project creators):

描述(来自项目的创建者):

FireBreath is a cross-platform Browser Plugin Framework written in C++.  Plugins created with FireBreath work on all major browsers, including Firefox 3.0 and later.  Platforms supported include Windows, Linux, and Mac OS X (intel).  Feature highlights include thread safety checks, Unicode support (with std::wstring), ActiveX support, built-in drawing model negotiation for Mac, automatic type conversion (including Javascript Arrays and Objects), advanced security features, and more.

FireBreath是一个使用C++写的跨平台的浏览器插件框架。使用FireBreath创建的插件可以再所有主流的浏览器上工作,包括Firefox3.0及以后版本。支持的平台包括WindowsLinuxMac OS X(intel)。产品特色包括 线程安全性检测,Unicode支持(和std::Wstring),ActiveX 支持,针对Mac的内置绘制模式,自动类型转换(包括 Javascript数组和对象),先进的安全特性等等。

Supported development environments are Visual Studio on windows, XCode on mac, and GCC on linux.  All platforms rely on CMake for easy cross-platform builds.

支持的开发环境:Windows平台上的Visual StudioMac平台上的XCodeLinux平台上的GCC。所有平台使用CMake来做简单的跨平台生成。

Project: Nixysa 项目:Nixysa

Project Home Page 项目主页
Description (from the home page):

描述(来自主页)

Nixysa is a framework written in Python to automatically generate glue code for NPAPI plugins (plugins for browsers such as Google Chrome or Firefox), letting you easily expose C++ classes to Javascript from a simple IDL representation.

Nixysa是一个使用Python写的框架用来自动为NPAPI插件生成粘合代码(插件支持的浏览器比如Google Chrome 或 Firefox),让你可以很容易的从一个简单的IDL申明中导入C++ 类到Javascript

Nixysa was originally conceived for the needs of O3D, but is flexible enough to support a wide range of use cases.

Nixysa原本是设想为O3D的需求写的,但是他足够灵活用以支持更广阔的使用场景。

Project: JUCE 项目:JUCE

Project Home Page 项目主页
Description (from the home page):

描述(来自主页)

JUCE (Jules' Utility Class Extensions) is an all-encompassing C++ class library for developing cross-platform applications.  It contains pretty much everything you're likely to need to create most applications, and is particularly good for creating highly-specialised UIs and for handling graphics and sound.  Supported development environments are XCode, Visual Studio, GCC (and probably any other modern C++ compiler)

JUCEJule的工具类扩展)是一个针对跨平台应用开发的包罗万象的C++类库。他包含几乎你需要用来创建应用的每样你需要的东西,尤其适合创建一个高度专业的UI和处理图像和声音。支持的开发环境有XCodeVisual StudioGCC(和其他任何现代C++编译器) 

(译者感叹:真是相当牛X啊!!)

Browser plugins can be built as NPAPI (Mac/Windows), or ActiveX (Windows).

浏览器插件 可以生成(Mac/Windows)下的NPAPI或者ActiveXWindows的)。

Project: QtBrowserPlugin 项目:QtBrowserPlugin

Project Home Page 项目主页
Description (from the home page):

描述(来自主页)

The QtBrowserPlugin solution makes it easy to write browser plugins that can be used in Mozilla FireFox, Safari, Opera, Google Chrome, QtWebKit and any other web browser that supports the "Netscape Plugin API", NPAPI

QtBrowserPlugin 解决方案 让浏览器插件的编写变得简单,可以被使用在Mozilla FireFoxSafariOperaGoogle ChromeQtWebKit和任何其他支持“Netscap 插件API”的Web浏览器,NPAPI
 

Articles, information, and tutorials 文章,信息和教程

NPAPI has been around a very long time, and there have been many attempts to distill down useful information on creating them:

NPAPI存在已久,以下是用来创建它们被提炼出来的一些信息:

ColonelPanic.net

· Building a Firefox plugin - part one: Discusses the difference between NPAPI and NPRuntime and summarizes the basic APIs needed to create a plugin

· 创建一个火狐插件 - 第一部分: 讨论NPAPINPRuntime的不同之处和创建一个插件需要的基本API的概述。

· Building a Firefox plugin - part two: Discusses the basic lifecycle of a NPAPI plugin

· 创建一个火狐插件 - 第二部分:讨论一个NPAPI插件的基本生命周期

· Building a Firefox plugin - part three: Discusses NPObjects and how to use them

· 创建一个火狐插件 - 第三部分:讨论NPObjects和如何使用它们

· Memory Management in NPAPI: Discusses how memory is managed in a NPAPI plugin

· NPAPI里的内存管理:讨论如何在一个NPAPI插件中进行内存管理

· Browser Plugins vs Extensions (Add-ons) -- the difference: Discusses the oft-misunderstood difference between a plugin and an extension

· 浏览器插件 vs 扩展 (附加组件) -- 区别:讨论经常被人误解的插件和扩展

Wikipedia 维基百科

· NPAPI: History and general information about NPAPI

· NPAPI:关于NPAPI的历史和一般信息

· Plugins and Extensions: The general difference between them

· 插件和扩展:他们两者之间的区别

Boom Swagger Boom 哦玛尼玛尼哄

· Writing an NPAPI Plugin for Mac OS X

· 为Mac OS X平台编写一个NPAPI插件

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多