WebOffice70标准版开发接口SDK.docx

上传人:b****1 文档编号:3457690 上传时间:2023-05-05 格式:DOCX 页数:29 大小:26.69KB
下载 相关 举报
WebOffice70标准版开发接口SDK.docx_第1页
第1页 / 共29页
WebOffice70标准版开发接口SDK.docx_第2页
第2页 / 共29页
WebOffice70标准版开发接口SDK.docx_第3页
第3页 / 共29页
WebOffice70标准版开发接口SDK.docx_第4页
第4页 / 共29页
WebOffice70标准版开发接口SDK.docx_第5页
第5页 / 共29页
WebOffice70标准版开发接口SDK.docx_第6页
第6页 / 共29页
WebOffice70标准版开发接口SDK.docx_第7页
第7页 / 共29页
WebOffice70标准版开发接口SDK.docx_第8页
第8页 / 共29页
WebOffice70标准版开发接口SDK.docx_第9页
第9页 / 共29页
WebOffice70标准版开发接口SDK.docx_第10页
第10页 / 共29页
WebOffice70标准版开发接口SDK.docx_第11页
第11页 / 共29页
WebOffice70标准版开发接口SDK.docx_第12页
第12页 / 共29页
WebOffice70标准版开发接口SDK.docx_第13页
第13页 / 共29页
WebOffice70标准版开发接口SDK.docx_第14页
第14页 / 共29页
WebOffice70标准版开发接口SDK.docx_第15页
第15页 / 共29页
WebOffice70标准版开发接口SDK.docx_第16页
第16页 / 共29页
WebOffice70标准版开发接口SDK.docx_第17页
第17页 / 共29页
WebOffice70标准版开发接口SDK.docx_第18页
第18页 / 共29页
WebOffice70标准版开发接口SDK.docx_第19页
第19页 / 共29页
WebOffice70标准版开发接口SDK.docx_第20页
第20页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

WebOffice70标准版开发接口SDK.docx

《WebOffice70标准版开发接口SDK.docx》由会员分享,可在线阅读,更多相关《WebOffice70标准版开发接口SDK.docx(29页珍藏版)》请在冰点文库上搜索。

WebOffice70标准版开发接口SDK.docx

WebOffice70标准版开发接口SDK

 

WebOffice文档控件

开发文档

尽最大努力使这篇文章中的内容完善且正确。

对于由这篇文档导致的任何形式的直接或间接损失不负有责任。

这篇文章的内容会跟随产品的升级而有所变化。

标记

名称:

WebOffice开发文档

状态:

发布

部门:

研发部

文档ID:

WebOffice-01-001

目录

 

一、工作原理5

1.1开发流程5

1.2WEB页面调用控件:

6

二、接口说明7

2.1接口7

2.1.1AboutBox7

2.1.2AcceptAllRevisions7

2.1.3CloseDoc7

2.1.4DelLocalFile8

2.1.5GetDocumentObject8

2.1.6GetFieldValue9

2.1.7GetTempFilePath9

2.1.8GetRevCount10

2.1.9GetFileSize10

2.1.10GetBookMarkCount10

2.1.11HideMenuItem10

2.1.12HttpInit11

2.1.13HttpAddPostFile11

2.1.14HttpAddPostString11

2.1.15HttpAddPostCurrFile12

2.1.16HttpPost12

2.1.17InsertFile12

2.1.18IsOpened13

2.1.19IsSaved13

2.1.20LoadOriginalFile14

2.1.21OpenFileDlg14

2.1.22ProtectDoc15

2.1.23PrintDoc15

2.1.24PutSaved15

2.1.25Save16

2.1.26SaveTo16

2.1.27SaveAs16

2.1.28SetFieldValue17

2.1.29SetTrackRevisions18

2.1.30ShowRevisions18

2.1.31SetCurrUserName18

2.1.32ShowDialog18

2.1.33UnProtectDoc(BSTRstrPwd)19

2.2属性20

2.2.1DocType20

2.2.2Version20

2.2.3AppVersion20

2.2.4lEventRet20

2.2.5IsModify21

2.2.6ShowToolBar21

2.2.7lContinue21

2.3事件21

2.3.1NotifyWordEvent21

2.3.2NotifyCtrlReady22

2.3.3NotifyToolBarClick22

附录:

WebOffice文件Http上传原理23

 

一、工作原理

WebOffice是基于客户端的ocx控件,它的功能是将Office文档(Word、Excel、WPS)嵌入到浏览器中,并调用Office中各种接口,完成文档编辑工作,然后使用控件的Http接口模拟表单提交,发送到数据处理页面(此文档举例为saveDoc.asp页,代码见演示文件),完成文档的存档工作。

1.1开发流程

├装载控件...

├触发初始化方法

--

WebOffice1_NotifyCtrlReady()

//-->

├执行初始化方法,打开新文档或装载已经存在的文档

functionWebOffice1_NotifyCtrlReady(){

document.all.WebOffice1.LoadOriginalFile("…","…");

}

├根据当前步骤,来决定是否进入修订状态,如果是修订状态,最好设置当前的用户名

functionWebOffice1_NotifyCtrlReady(){

document.all.WebOffice1.LoadOriginalFile("…","…");

document.all.WebOffice1.SetCurrUserName("张三");

document.all.WebOffice1.SetTrackRevisions

(1);

}

├填写表单元素,编辑Office文档

├执行Http上传接口保存表单元素和Office文档

//保存文档之前,如果需要接受修订,需要调用

document.all.WebOffice1.SetTrackRevisions(4);

//通过Http接口上传

document.all.WebOffice1.HttpInit();

document.all.WebOffice1.HttpAddPostString("…","…");

document.all.WebOffice1.HttpAddPostCurrFile("…","…");

document.all.WebOffice1.HttpPost("…")

├saveDoc.asp获取表单数据和Office进行数据库操作,并返回操作是否正确。

├根据saveDoc.asp返回值进行相应操作。

1.2WEB页面调用控件:

0px;TOP:

0px"

classid="clsid:

E77E049B-23FC-4DB8-B756-60529A35FAD5"codebase=WebOffice.ocx#Version=3,0,0,0>

主要参数说明:

id控件在网页的别名,可以通过别名调用控件的方法、属性

width控件的宽度,可以使用绝对大小,如width="100px"。

height控件的高度

codebase设置控件自动下载的路径,用户如果没有安装控件,系统会自动访问codebase的路径下载控件;“#Version”后的是控件的版本,如果用户当前的软件版本低于“#Version”后面的版本,系统也会自动下载最新的控件

注意:

如果控件的width和height属性使用%表示,则要明确指明它所在的容器的大小,如把控件放到表格内,则要明确指明表格的width和height的绝对值。

二、接口说明

2.1接口

2.1.1AboutBox

原型:

voidAboutBox();

功能:

显示WebOffice版本信息

返回值:

示例:

document.all.WebOffice1.AboutBox();

2.1.2AcceptAllRevisions

原型:

longAcceptAllRevisions();

功能:

接受当前文档所有修订

返回值:

0:

接受修订成功

非零:

接受修订失败

示例:

document.all.WebOffice1.AcceptAllRevisions();

2.1.3CloseDoc

原型:

longCloseDoc(longblReqSaved);

功能:

关闭当前文档

参数:

blReqSaved:

0:

关闭文档,不保存当前修改。

1:

关闭文档,保存当前修改。

2:

如果文档已经被修改,显示保存文档对话框,否则直接关闭。

其它:

关闭文档,保存当前修改。

返回值:

0:

失败

非零:

成功

示例:

//关闭当前文档,不保存当前修改。

document.all.WebOffice1.CloseDoc(0);

2.1.4DelLocalFile

原型:

longDelLocalFile(BSTRstrFilePathName);

功能:

删除本地文件

参数:

strFilePathName:

本地文件的绝对路径。

返回值:

0:

删除成功

非零:

删除失败

示例:

document.all.WebOffice1.DelLocalFile("c:

\\111.doc");

2.1.5GetDocumentObject

原型:

IDispatch*GetDocumentObject();

功能:

获取文档对象的ActiveDocument对象,此接口非常重要,基本所有的VBA功能都可以通过这个接口来实现。

参数:

返回值:

ActiveDocument对象的Dispatch

示例:

/*以下的JavaScript为采用ActiveDocument的方式直接操作VBA,向DOC文档的书签中加入一个图片。

functionAddPicture(strMarkName,strBmpPath,vType)

在书签位置插入图片,

strMarkName书签的名称

strBmpPath 图片的路径

vType      插入后的图片的样式,5为浮动在文字上面

AddPicture("test1","d:

\\111.bmp",5);

AddPicture("test1","d:

\\111.bmp",128);

*/

functionAddPicture(strMarkName,strBmpPath,vType)

{

//定义一个对象,用来存储ActiveDocument对象

        varobj;

        obj=newObject(document.all.WebOffice1.GetDocumentObject());

        if(obj!

=null){

          varpBookMarks;

//VAB接口获取书签集合

                  pBookMarks=obj.Bookmarks;

                  varpBookM;

//VAB接口获取书签strMarkName

                  pBookM=pBookMarks(strMarkName);

                  varpRange;

//VAB接口获取书签strMarkName的Range对象

                  pRange=pBookM.Range;

                  varpRangeInlines;

//VAB接口获取书签strMarkName的Range对象的InlineShapes对象

                  pRangeInlines=pRange.InlineShapes;

                  varpRangeInline;

//VAB接口通过InlineShapes对象向文档中插入图片

                  pRangeInline=pRangeInlines.AddPicture(strBmpPath); 

//设置图片的样式,5为浮动在文字上面

                  pRangeInline.ConvertToShape().WrapFormat.TYPE=vType;

                  deleteobj; 

   }

}

2.1.6GetFieldValue

原型:

BSTRGetFieldValue(BSTRstrFieldName,BSTRstrSheetName);

功能:

获得书签位置的数值

参数:

strFieldName:

书签的名字

strSheetName:

预留字段(值为空)

返回值:

返回书签的值

示例:

//获得书签的值

varstrFieldValue=document.all.WebOffice1.GetFieldValue("mark_1","")

2.1.7GetTempFilePath

原型:

BSTRGetTempFilePath();

功能:

获得临时文件路径

参数:

返回值:

当前文件的临时路径

示例:

varstrTempPath=document.all.WebOffice1.GetTempFilePath();

2.1.8GetRevCount

原型:

longGetRevCount();

功能:

获取修订节点的个数

参数:

返回值:

获取修订节点的个数

示例:

 

2.1.9GetFileSize

原型:

longGetFileSize(LPCTSTRstrFilePath);

功能:

获取本地文件的大小

参数:

返回值:

示例:

varvLen=obj.GetFileSize("c:

\\111.doc");

2.1.10GetBookMarkCount

原型:

longGetBookMarkCount();

功能:

获取文档中书签的总数量

参数:

返回值:

示例:

2.1.11GetBookMarkInfo(lIndex,iType)

原型:

longGetBookMarkInfo(lIndex,iType);

功能:

获取文档中书签的信息

参数:

lIndex:

书签的序号,从1开始

iType:

获取内容类型。

0获取书签名,1获取书签值

返回值:

示例:

2.1.12HideMenuItem

原型:

longHideMenuItem(longlMenuType);

功能:

控制自有工具栏的显示

参数:

lMenuType工具栏开关,采用32位的数字作为开关,当相关位为1的时候,按钮显示,为0是按钮隐藏。

enum{

vNew=0x01,//新建

vOpen=0x02,//打开

vSaveAs=0x04,//保存

vPrint=0x10,//打印

vPrintView=0x20,//打印预览

vReturn=0x1000,//全屏

vShowHideMenu=0x4000,//显示/隐藏菜单

vFullScrean=0x2000//返回

};

返回值:

示例:

//只显示新建和全屏按钮

Object.HideMenuItem(0x01+0x1000);

2.1.13HttpInit

原型:

longHttpInit();

功能:

初始化上传接口

参数:

返回值:

示例:

//上传前必须执行此方法

document.all.weboffice1.HttpInit();

2.1.14HttpAddPostFile

原型:

longHttpAddPostFile(BSTRstrName,BSTRstrFile);

功能:

Http上传相关(保留)

参数:

返回值:

示例:

//上传本地文件c:

\\111.doc

document.all.weboffice1.HttpAddPostFile("111","c:

\\111.doc")

2.1.15HttpAddPostString

原型:

longHttpAddPostString(BSTRstrName,BSTRstrValue);

功能:

添加要上传的表单域

参数:

strName:

表单域的名称

strValue:

表单域的值

返回值:

示例:

//添加表单域,可多次执行此方法

document.all.WebOffice1.HttpAddPostString("DocTitle",myform.DocTitle.value);

2.1.16HttpAddPostCurrFile

原型:

longHttpAddPostCurrFile(Stringfield,StringnewFileName);

功能:

添加要上传的Word或者Excel文件

参数:

Field:

要上传文件的id

newFielName:

上传后的新文件名。

该参数可以为空,系统将自动为文件命名

返回值:

示例:

document.all.WebOffice1.HttpAddPostCurrFile("DocContent","");

2.1.17HttpPost

原型:

BSTRHttpPost(BSTRstrHttpURL);

功能:

将当前表单和文件数据提交到指定URL路径

参数:

strHttpURL:

处理表单和文件数据的文件URL路径

返回值:

Succeed:

上传成功

failed:

上传失败

示例:

//相对路径

varreturnValue=document.all.WebOffice1.HttpPost("../saveDoc.jsp");

//绝对路径

varreturnValue=document.all.WebOffice1.HttpPost("http:

//127.0.0.1/saveDoc.jsp")

2.1.18InsertFile

原形:

shortInsertFile(LPCTSTRstrFilePathName,shortnCurPos)

功能:

插入合并文件,和插入图片。

参数:

strFilePathName:

文件或者图片的路径,可以是Http.或者Ftp路径

nCurPos:

位置和图片控制符。

nCurPos或者nCurPos-8

0:

当前位置

1:

文件开头

2:

文件末尾

如果第四位为1:

表示插入的是图片

返回值:

0:

正确

其他:

错误

示例:

//文件头部

document.all.WebOffice1.InSertFile("http:

//XX.com/XX.doc",1);

//文件尾部

document.all.WebOffice1.InSertFile("http:

//XX.com/XX.doc",2);

//当前光标位置

document.all.WebOffice1.InSertFile("http:

//XX.com/XX.doc",0);

//文件头部

document.all.WebOffice1.InSertFile("http:

//XX.com/XX.jpg",9);

//文件尾部

document.all.WebOffice1.InSertFile("http:

//XX.com/XX.jpg",10);

//当前光标位置

document.all.WebOffice1.InSertFile("http:

//XX.com/XX.jpg",8);

2.1.19IsOpened

原型:

longIsOpened();

功能:

判断当前是否打开文件

参数:

返回值:

0:

表示当前未打开文档

非0:

表示已经打开文档

FILE_TYPE_WORD=11,

FILE_TYPE_WORD=11,

FILE_TYPE_EXCEL=12,

FILE_TYPE_PPT=13,

FILE_TYPE_RTF=14,

FILE_TYPE_WPS=21,

FILE_TYPE_PDF=31,

FILE_TYPE_UNK=127

示例:

varisOpened=document.all.WebOffice1.IsOpened();

2.1.20IsSaved

原型:

longIsSaved();

功能:

判断文件是否被修改

参数:

返回值:

0:

文件已被修改

非零:

文件未被修改

示例:

varisSaved=document.all.WebOffice1.IsSaved();

2.1.21LoadOriginalFile

原型:

longLoadOriginalFile(BSTRpcFileNameOrUrl,BSTRpcType);

功能:

新建、装载Office文档

参数:

pcFileNameOrUrl:

要装载文件的本地路径或者URL,值为空表示新建文档,如果是在Http的Web环境下,可以传相对路径.

pcType:

doc:

打开、新建Word文件

xls:

打开、新建Excel文件

ppt:

打开、新建PPT文件

wps:

打开、新建WPS文件

返回值:

0:

失败

非0:

成功

示例:

//通过URL打开一个服务器文件,getdoc.asp代码见演示文件

document.all.WebOffice1.LoadOriginalFile("http:

//127.0.0.1/getdoc.asp?

id=8","doc");

//通过URL打开一个服务器文件,相对路径

document.all.WebOffice1.LoadOriginalFile("/getdoc.asp?

id=8","doc");

document.all.WebOffice1.LoadOriginalFile("./getdoc.asp?

id=8","doc");

//新建Excel

document.all.WebOffice1.LoadOriginalFile("","xls");

//通过Word打开本地文件

document.all.WebOffice1.LoadOriginalFile("C:

\\demo.doc","doc");

2.1.22OpenFileDlg

原型:

shortOpenFileDlg();

功能:

打开本地文件显示在WebOffice中

参数:

pcFileNameOrUrl:

保存的文件路径

返回值:

示例:

//打开对话框

document.all.WebOffice1.OpenFileDlg();

2.1.23ProtectDoc

原型:

longProtectDoc(longlProOrUn,longlType,BSTRstrPWD);

功能:

文档保护

参数:

lProOrUn:

└1:

为保护文档

└0:

为解锁文档

lType

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2