我的知识 产品 下载 论坛 新功能
Wiz
立即下载
WizHtmlEditor插件
下载Wiz
WizBrother Html Editor (WizHtmlEditor)支持插件,利用插件机制,您可以方便的为WizBrother Html Editor编写插件。

1、插件的作用

利用JavaScript或者VBScript,来操作正在编辑的文章的document对象(HTML DOM里面的document对象),通过DHTML来编辑修改HTML文档,以实现一些编辑器本身没有的功能。

2、插件保存位置

插件都保存在编辑器安装目录下面的WizHtmlEditor\Plugins这个文件夹内。

3、插件的组成

Plugin.ini文件

这是插件的描述文件,如果该文件包含多种语言文字,例如同时包含中文,日文,韩文等等,您需要将该文件需要按照Unicode或者utf-8编码保存,并且保存的时候,包含Unicode或者utf-8签名。

如果仅在一种语言下使用,可以采用Ansi编码,但是在其他语言下使用,可能会出现乱码。

Plugin.ini描述。下面是一个典型的例子。该文件可以在WizHtmlEditor安装目录下面的WizHtmlEditor\Plugins目录找到。

[Common]
AppName=网编工具
AppName_2052=网编工具
AppName_1028=网编工具
AppGUID={6613F05F-B926-48eb-A664-083B0B779272}
AppType=Normal
AppVersion=1.0
PluginCount=3

[Plugin_0]
Caption=格式化文本…
Caption_2052=格式化文本…
Caption_1028=格式化文本…
GUID={B912ACB4-36D6-4755-A846-8596A00A34A9}
HtmlDialogFileName=FormatText.htm
HtmlDialogTitle=格式化文本
HtmlDialogTitle_2052=格式化文本
HtmlDialogTitle_1028=格式化文本
HtmlDialogWidth=300
HtmlDialogHeight=200
Type=HtmlDialog
BeginGroup=0

[Plugin_1]
Caption=文字检错
Caption_2052=文字检错
Caption_1028=文字检错
GUID={E3524814-92B2-4ed8-A301-E23FE0152605}
HtmlDialogFileName=CheckWords.htm
HtmlDialogTitle=文字检错
HtmlDialogTitle_2052=文字检错
HtmlDialogTitle_1028=文字检错
HtmlDialogWidth=300
HtmlDialogHeight=200
Type=HtmlDialog
BeginGroup=0

[Plugin_2]
Caption=繁简体转换…
Caption_2052=繁简体转换…
Caption_1028=繁简体转换…
GUID={C5B8B30B-EEBF-4117-9BDC-29F7F34CC552}
HtmlDialogFileName=ConvertWords.htm
HtmlDialogTitle=繁简体转换
HtmlDialogTitle_2052=繁简体转换
HtmlDialogTitle_1028=繁简体转换
HtmlDialogWidth=300
HtmlDialogHeight=220
Type=HtmlDialog
BeginGroup=0

说明

[Common]部分描述
AppName:插件应用名称。如果插件只有一个功能,则该应用名称和插件功能一致,否则是所有插件功能的概述。
AppName_2052:插件的简体中文名称
AppName_1028:插件的繁体中文名称
AppGUID:插件应用的GUID,不同的插件应用,GUID应该不同。
AppType=Normal:插件应用类型,目前只能是Normal
AppVersion=1.0:插件版本,只能是一个浮点数
PluginCount=1:插件功能数量,只能是整数

[Plugin_0]:某一个插件功能,对应于一个插件菜单。以0开始,0到PluginCount - 1
Caption:插件菜单名称
Caption_2052:插件简体中文菜单名称
Caption_1028:插件繁体中文菜单名称
GUID:插件功能GUID。不同的插件功能,GUID必须不同。
BeginGroup:是否在该插件菜单前面增加一个分割线。0:不增加分割线,1:增加分割线。
Type:插件功能类型。只能是HtmlDialog。HtmlDialog,表示用户点击后,打开一个Html对话框。
HtmlDialogFileName:Html对话框打开的Html文件名。该文件必须和plugin.ini在同一个目录中。
HtmlDialogTitle:Html对话框标题
HtmlDialogTitle_2052:Html对话框简体中文标题
HtmlDialogTitle_1028:Html对话框繁体中文标题
HtmlDialogWidth:Html对话框宽度,单位是像素
HtmlDialogHeight:Html对话框高度,单位是像素

[Strings]:插件里面使用到的字符串资源,可以使用
等号左边是字符串名称,右边是字符串实际内容。
字符串名称+下划线+语言代码,可以指定某种语言的字符串。
例如
buttonOK=OK
buttonOK_2052=确定
如果Html对话框中需要支持多种语言,您可以为Html里面的需要本地化的字符串指定一个id,例如:

<span id=”labelAddToTaskScheduler”>Add to Task Scheduler&nbsp; </span>

WizHtmlEditor在显示这个对话框的时候,会在Strings里面查找名称为labelAddToTaskScheduler_xxxx的字符串,来替换Add to Task Scheduler&nbsp; 。如果没有找到,就查找默认的labelAddToTaskScheduler,如果仍然没有找到,就不进行替换。WizHtmlEditor支持自动替换语言的Html标记有:span, div, h1, h2, h3, h4, h5, h6, h7, td。

如果要让WizHtmlEditor自动替换Html对话框里面的字符串资源,您需要在Html文件里面增加下面的脚本:

<script language=“JavaScript” type=“text/javascript”>
    window.external.LocalizeDialog();    
</script>    

HTML对话框对应的HTML文件

WizHtmlEditor插件必须包含一个HTML文件,该HTML文件,插件对话框会内置一个浏览器,显示这个HTML文件,以便用户进行操作。

在这个HTML文件里面,插件开发者,可以通过JavaScript来获得用户正在编辑的文档的DOM中的document对象。要使用这个功能,必须在WizHtmlEditor里面,通过执行插件方式来打开并执行这个html文件。

在HTML的JavaScript对象中,WizHtmlEditor自定义了window.external对象,利用external,开发者可以获得WizHtmlEditor内部对象。下面是一个例子:

    <script language=“JavaScript” type=“text/jscript”>
        //
        var objEditor = window.external; //获得外部对象,该对象是WizHtmlEditor实现的
        var objDoc = objEditor.Document; //这个是当前正在编辑的网页的文档对象
        var plugin_path = objEditor.PluginPath; //这个是当前插件所在的路径
        objEditor.LocalizeDialog(); //本地化当前插件对话框
        var localString = objEditor.LoadPluginString(“MyString”); //从plugin.ini里面,提取一个本地化字符串,字符传名字为MyString
        //…
        objEditor.CloseDialog();        //关闭对话框,例如当用户点击确定或者取消按钮后执行
    </script>

 

在上面的代码中,通过var objDoc = objEditor.Document,获得了当前正在编辑的文档对象,该对象,就是html dom对象中的document。通过这个对象,就可以使用dhtml功能,来操作正在编辑的文档,以实现一些功能。

4、执行插件

将插件全部的文件(ini, html),保存到WizHtmlEditor安装目录下面的WizHtmlEditor\Plugins\<您的插件app GUID>这个文件夹中,然后重新运行WizHtmlEditor,在主菜单的工具菜单下面,就会显示出相应的插件:


图 执行插件