点聚WebOffice开发接口SDK及其开发指南.docx
- 文档编号:3939290
- 上传时间:2022-11-26
- 格式:DOCX
- 页数:12
- 大小:21.09KB
点聚WebOffice开发接口SDK及其开发指南.docx
《点聚WebOffice开发接口SDK及其开发指南.docx》由会员分享,可在线阅读,更多相关《点聚WebOffice开发接口SDK及其开发指南.docx(12页珍藏版)》请在冰豆网上搜索。
点聚WebOffice开发接口SDK及其开发指南
WebOffice文档控件
开发文档
北京点聚信息技术有限公司
2008/05/08
北京点聚信息技术有限公司(以下简称“点聚”)尽最大努力使这篇文章中的内容完善且正确。
点聚对于由这篇文档导致的任何形式的直接或间接损失不负有责任。
这篇文章的内容会跟随产品的升级而有所变化。
标记
名称:
WebOffice开发文档
状态:
发布
部门:
研发部
文档ID:
WebOffice-01-001
更新记录
版本
时间
备注
1.增加了Is2007属性,判断当前版本是否Office2007。
2.增加了lContinue属性,可以在Word、excel事件处理中终止该事件操作。
3.增加了HideMenuAction方法,能够对Office2007菜单进行控制。
4.修改了新建、打开文档闪的问题。
现在直接打开,没有闪烁。
5.修改了EXCEL打开无菜单项的BUG
6.增加了工具栏按钮事件
7.扩展了GetDocumentObject接口导出PPT的 : _Presentation>对象 8.增加SaveAsPDF方法,无须安装Adobe即可直接输出PDF 9.增加IsModify属性,判断文档是否修改 10.增加GetFileSize方法,判断文档的大小 11.增加了Word中的事件捕获。 增加了工具栏 2.增加了WPS的支持 3.增加了上传文件的压缩和加密 1.设置了对文档安全的控制 2.清除了对Word模板的修改 1.支持自定义的菜单,并跟Javascript绑定 可以设置文档打开密码和可写密码,支持Word、Excel 2.设置Word中的变量,可以更新关联的域 3.扩展了这个接口,支持Http下的相对路径 软件开发协议 北京点聚信息技术有限公司(以下简称点聚)的所有产品,包括但不限于: 开发工具包,磁盘,光盘,硬件设备和文档,以及未来的所有定单都受本协议的制约。 如果您不愿接受这些条款,请在收到后的7天内将开发工具包寄回点聚,预付邮资和保险。 我们会把货款退还给您,但要扣除运费和适当的手续费。 1.许可使用 您可以将本软件合并、连接到您的计算机程序中,但其目的只是如开发指南中描述的那样保护该程序。 您可以以存档为目的复制合理数量的拷贝。 2.禁止使用 除在条款1中特别允许的之外,不得复制、反向工程、反汇编、反编译、修改、增加、改进软件、硬件和产品的其它部分。 禁止对软件和产品的任何部分进行反向工程,或企图推导软件的源代码。 禁止使用产品中的磁性或光学介质来传递、存储非本产品的原始程序或由点聚提供的产品升级的任何数据。 禁止将软件放在服务器上传播。 3.有限担保 点聚保证在自产品交给您之日起的12个月内,在正常的使用情况下,硬件和软件存储介质没有重大的工艺和材料上的缺陷。 4.修理限度 当根据本协议提出索赔时,点聚唯一的责任就是根据点聚的选择,免费进行替换或维修。 点聚对更换后的任何产品部件都享有所有权。 保修索赔单必须在担保期内写好,在发生故障14天内连同令人信服的证据交给点聚。 当将产品返还给点聚或点聚的授权代理商时,须预付运费和保险。 除了在本协议中保证的担保之外,点聚不再提供特别的或隐含的担保,也不再对本协议中所描述的产品负责,包括它们的质量,性能和对某一特定目的的适应性。 5.责任限度 不管因为什么原因,不管是因合同中的规定还是由于刑事的原因,包括疏忽的原因,而使您及任何一方受到了损失,由我方产品所造成的损失或该产品是起诉的原因或与起诉有间接关系,点聚对您及任何一方所承担的全部责任不超出您购买该产品所支付的货款。 在任何情况下,点聚对于由于您不履行责任所导致的损失,或对于数据、利润、储蓄或其它的后续的和偶然的损失,即使点聚被建议有这种损失的可能性,或您根据第3方的索赔而提出的任何索赔均不负责任。 6.协议终止 当您不能遵守本协议所规定的条款时,将终止您的许可和本协议。 但条款2,3,4,5将继续有效。 7.针对WebOffice的特别条款 WebOffice为免费版本软件,可以使用于个人开发和商业用途中。 点聚将提供有限的技术服务。 一、工作原理 点聚WebOffice是基于客户端的ocx控件,它的功能是将Office文档(Word、Excel、WPS)嵌入到浏览器中,并调用Office中各种接口,完成文档编辑工作,然后使用控件的Http接口模拟表单提交,发送到数据处理页面(此文档举例为页,代码见演示文件),完成文档的存档工作。 1.1开发流程 ├装载控件 ├触发初始化方法 -- WebOffice1_NotifyCtrlReady() =vType; deleteobj; } } 2.1.1GetFieldValue 原型: BSTRGetFieldValue(BSTRstrFieldName,BSTRstrSheetName); 功能: 获得书签位置的数值 参数: strFieldName: 书签的名字 strSheetName: 预留字段(值为空) 返回值: 返回书签的值 示例: 取修订的用户 vUserName= 取修订的时间 vDate=newString获取修订的动作 varvRet==="1": 表示"插入"的操作 vRet=="2": 表示"删除"的操作 取修订的内容 vUserName=总体的例子代码 varvCount; vCount= varvOpt=0; varvDate; for(vari=1;i<=vCount;i++){ vOpt=if("1"==vOpt){ vOpt="插入"; }elseif("2"==vOpt){ vOpt="删除"; }else{ vOpt="未知操作"; } vDate=newStringvDate=parseFloat(vDate); dateObj=newDate(vDate); alert()+"年"+()+1+"月"+()+"日"+()+"时"+()+"分"+()+"秒"); alert("用户: "++"\r\n操作: "+vOpt+"\r\n内容: "+原型: longGetFileSize(LPCTSTRstrFilePath); 功能: 获取本地文件的大小 参数: 返回值: 示例: varvLen=("c: \\"); 2.1.2GetBookMarkCount 原型: longGetBookMarkCount(); 功能: 获取文档中书签的总数量 参数: 返回值: 示例: GetFileSize 2.1.3GetBookMarkInfo 原型: BSTRGetBookMarkInfo(longlIndex,longlType); 功能: 获取各书签的信息(名称和变量) 参数: 返回值: 示例: varvBKCount; vBKCount=variIndex; varvName; varvValue; varvShowInfo; vShowInfo=""; for(iIndex=1;iIndex<=vBKCount;iIndex++){ vName=); vValue=); vShowInfo+="BK"+iIndex+": "+vName+"="+vValue+" vName=""; vValue=""; } alert(vShowInfo); /"); 者Ftp路径 nCurPos: 位置和图片控制符。 nCurPos或者nCurPos-8 0: 当前位置 1: 文件开头 2: 文件末尾 如果第四位为1: 表示插入的是图片 返回值: 0: 正确 其他: 错误 示例: 者Ftp路径 nCurPos: 位置和图片控制符。 nCurPos或者nCurPos-8 0: 当前位置 1: 文件开头 2: 文件末尾 如果第四位为1: 表示插入的是图片 返回值: 0: 插入成功 非0: 插入失败 示例: pcType: doc: 打开、新建Word文件 xls: 打开、新建Excel文件 ppt: 打开、新建PPT文件 wps: 打开、新建WPS文件 返回值: 0: 失败 非0: 成功 示例: id=8","doc"); ("Standard",1,1); ("Standard",1,4); ("Formatting",1,1); ("Formatting",1,4); 用LoadOriginalFile打开URL上路径的时候 上传和下载的时候 上传时候设置是否对文件加密和压缩 定义事件处理函数 -- WebOffice1_NotifyToolBarClick(lCmd) 截获处理事件 functionWebOffice1_NotifyToolBarClick(lCmd){ if(32772==lCmd){ =0; } } 三、ASP例子说明 3.1Access数据库结构 表doc ======================================== id自动编号 DocID文本(10) DocTitle文本(10) DocType文本(15) DocData日期/时间 DocContentOLE对象 ======================================== 说明: DocContent为上传的Office文档的数据,为二进制数据类型,如果使用SQLServer请改为Image类型。 3.2演示程序主要页面说明 取得服务器的项目文件目录,赋值给Application对象,供接口调用 调用weboffice控件在线编辑word,并提交给页面上传保存word文档 保存表单元素和上传的word文件 取得数据库中的记录并返回给调用它的页面 用于调试数据传送到页 template用于存放红头文件的模板 3.3开发必读 1)调用控件的时候尽量在控件ID前加“”,如: 2)Javascirpt区分大小写,使用时请注意。 3)WebOffice控件为VC++6编写,控件的所有方法和参数区分大小写,请严格参考本手册。 4)在本控件的演示程序中,有个文件用于测试表单元素和文件上传。 四、FAQ 如何把文件直接上传到服务器 WebOffice通过Http协议实现文件直接上传到服务器,原理见附件一《WebOffice文件Http上传原理》 五、附录 WebOffice文件Http上传原理 WebOffice文件Http上传原理分析 点聚WebOffice控件使用了自身的文件Http上传接口实现文件和表单域的上传保存,本文将简要介绍该上传方式的原理和使用方法。 注: 点聚WebOffice的上传接口和AIP是一致的。 原理 因为Web页面上的WebOffice打开的文件无法随表单记录提交到处理页面,所以我们把文件模拟成表单的文件域 主要上传接口: HttpInit(); 该方法用于初始化上传接口,不需要设置参数 HttpAddPostString(StringFieldName,StringsomeValue); 添加要提交的表单域,FieldName是要上传表单域名称,someValue是表单域值 例一: HttpAddPostString("username","zhangSan"); 它类似域表单域的 例二: HttpAddPostString("username",…. 注意: 如果使用点聚上传接口,那么form表单里的表单域不会被提交到处理页面。 需要手工添加到上传接口(HttpAddPostString接口),然后通过控件发送到处理页面。 例二使用了“获取表单域值。 HttpAddPostCurrFile(StringfileName,StringReName); 添加当前WebOffice编辑的文件给上传接口,该接口把文件模拟到成一个表单的文件域,并提交到处理页面。 例一: HttpAddPostCurrFile("AipFile",""); 该接口模拟表单文件域如下: 注意: 第二个参数为空表示控件自动为文件命名,如: ,如果需要重命名可以在第二个参数指明文件名称,也可在保存页面指定文件名称。 HttpPost(Stringurl); 执行上传操作将文件和表单域提交到url的页面进行保存操作,并获取url页面返回的执行结果(是否成功,可以根据这个结果来获取服务器端执行的结果)。 url支持绝对路径和相对路径。 绝对路径,例如: 相对路径要以“./”或者“../”开头。 例如: ./ 完整的上传接口演示 functionSaveDoc(){ varreturnValue;; /"); if("true"==returnValue){ alert("文件上传成功"); }else{ alert("文件上传失败") } } 关于保存 WebOffice上传接口将数据流以Http方式提交到保存页面,至于对数据处理就和普通的文件上传处理一样了,具体代码参考附件(asp和jsp的实现)。
";
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- WebOffice 开发 接口 SDK 及其 指南