我们知道,在线Office插件,国内有几家公司做得不错,老的厂商有江西金格,重庆软航,北京点聚等。
目前根据客户的需要,J.office提供重庆软航的在线Office编辑的集成解决方案,购买J.Office的客户可以自己购买,也可以由宏天帮助采购。
J.Office 2.0提供了两种方式,用户只需要配置,则可以同时支持重庆软航或北京点聚的,以下为J.Office提供的软航的Office插件的整合代码示例方式。
/**
* 集成软航Office在线编辑控件
* @param {} conf
* @return {}
*/
NtkOfficePanel=function(conf){
var fileId=conf.fileId?conf.fileId:'';
var officeObj = document.createElement('object');
officeObj.width = "100%";
officeObj.height = "100%";
officeObj.classid= "clsid:A39F1330-3322-4a1d-9BF0-0BA2BB90E970";
officeObj.codebase = __ctxPath+'/js/core/ntkoffice/OfficeControl.cab';//weboffice_V6.0.4.6.cab#V6,0,4,6
var panelConf={border:false,layout:'fit'};
/**
* 保存文档
*/
var saveFn=function(config){
fileId=config.fileId?config.fileId:'';
var result= officeObj.SaveToURL(__fullPath + '/file-upload',"EDITFILE","fileId="+fileId,config.docName+'.doc',0);
var obj=Ext.util.JSON.decode(result);
if(obj&&obj.success){
fileId=obj.fileId;
}else{
obj={success:false};
}
return obj;
};
if(conf.showToolbar){
panelConf.tbar=new Ext.Toolbar({
items:[
{
text : '保留修改痕迹',
iconCls : 'btn-archive-save-trace',
handler : function() {
officeObj.ActiveDocument.Application.UserName=curUserInfo.fullname;
officeObj.ActiveDocument.TrackRevisions=true;
}
}, '-', {
text : '取消保留痕迹',
iconCls : 'btn-archive-cancel-trace',
handler : function() {
officeObj.ActiveDocument.TrackRevisions=false;
}
}, '-',{
text : '清除痕迹',
iconCls : 'btn-archive-eraser',
handler : function() {
officeObj.ActiveDocument.AcceptAllRevisions();
}
},'-',{
text:'保存至服务器',
iconCls:'btn-save',
scope:this,
handler:function(){
Ext.MessageBox.prompt('输入提示','请输入文档的名称',function(btn,text){
if(btn!='ok') return;
if(text=='')text='未命名';
var result=saveFn({docName:text});
if(result.success){
Ext.ux.Toast.msg('操作信息','成功文档保存~');
}else{
Ext.ux.Toast.msg('操作信息','保存文档失败!');
}
});
}
}
]
});
}
Ext.applyIf(panelConf,conf);
var panel=new Ext.Panel(panelConf);
panel.on('afterrender',function(){
panel.body.appendChild(officeObj);
panel.doLayout();
if(fileId!=''){
officeObj.OpenFromURL(__ctxPath+'/file-download?fileId='+fileId);
}else{
officeObj.CreateNew("Word.Document");
}
});
//对外公共方法
return {
panel:panel,
officeObj:officeObj,
openDoc:function(inFileId){
fileId=inFileId;
officeObj.OpenFromURL(__ctxPath+'/file-download?fileId='+fileId);
},
/**
* return json result is format as below:
* {sucess:false} or
* {success:true,fileId:73,fileName:'myDoc.doc',filePath:'others/2010/aaa0393304.doc',message:'upload file success(10229 bytes)'}
*/
saveDoc:function(config){
return saveFn(config);
},
closeDoc:function(){
officeObj.Close();
}
};
};
使用以下所示:
//创建
this.officePanel=NtkOfficePanel({showToolbar:true,height:320});
...
//引用
items:[
...,
this.officePanel.panel
]
//保存文档
Ext.MessageBox.prompt('操作信息','请输入文档的名称',function(btn,text){
if(text=='')text='未命名';
var resultJson=officePanel.saveDoc({docName:text});
});
整合界面如下:
- 大小: 75.8 KB
分享到:
相关推荐
总之,Struts2和WebOffice的结合,为企业级Web应用提供了一种高效、便捷的在线文档处理解决方案。通过理解这两个组件的工作原理,开发者可以构建出功能强大的文档管理系统,满足用户在云端编辑、分享和协作的需求。...
1. **Delphi编程**:Delphi使用Pascal语法,提供了一套完整的开发工具,包括代码编辑器、调试器和集成的版本控制系统。 2. **快速应用程序开发(RAD)**:Delphi以其快速开发能力著称,允许开发者快速构建用户界面...
另一种策略是让永中Office使用公文交换系统的证书和私钥,这样在编辑公文后,可以通过交换系统发送并利用其安全功能。这种方式符合用户通常先编辑文件再发送的习惯,但用户可能不易察觉两个产品之间的联系。而且,...
另一种方法是使用OCR软件(如ABBYY FineReader),这些工具可以直接将图片中的文字转换为可编辑的文本。 - **Word中的图片转JPG**:提取Word文档中的图片为JPG格式主要用于分享或使用图片。一种简单的方法是将图片...
文档中提到的“Editplus”,“Eclipse”和“Jcreator”都是开发Java应用程序时常用的代码编辑器或IDE。 - PDE(Plugin Development Environment):这是Eclipse中的一个插件开发环境,用于开发Eclipse插件。 - IBM...
转换器是一种应用程序,它可以读取一种文件格式并将其保存为另一种格式。对于PPT到DOC的转换,转换器会解析PPT文件中的每一页,包括文本、图片、图表和其他元素,并在DOC文件中重现这些内容。这个过程不仅可以保留...
- **VBA代码编辑器**:Access 2000与Office套件中的其他应用共享同一编辑器,而早期版本的Access则有自己的VBA编辑窗口。 #### 6. 创建Access应用:从模板开始 当启动Access 2000时,用户可以选择创建新数据库或...
VBA是Microsoft Office套件中内置的一种编程语言,允许用户自定义功能,如自动化任务、创建宏等。在这个案例中,它被用来构建一个工具,可以对一系列IP地址执行ping命令,从而检测网络连通性。 描述中的“简单的用...
总的来说,MHT格式是一种方便网页保存和组织的工具,特别适用于那些希望将网页内容整合成电子书或其他离线阅读形式的用户。然而,它的局限性在于对非IE浏览器的支持度不高,以及不能用普通文本编辑器轻松编辑。随着...
车联网技术是一种新兴的产业,它伴随着云计算、网络技术和感知技术的发展而兴起。车联网通过各种车载传感器、控制系统和无线通信技术,使得车辆能够连接网络,实现信息的交换与处理,从而对车辆进行远程监控、诊断和...
2. **Visual Basic for Applications (VBA)**:Access内置VBA编辑器,用户可以通过编写代码实现更复杂的功能和自定义界面。 ### 七、数据导入与导出 1. **数据导入**:Access支持从Excel、CSV、XML等多种格式导入...
开机画面现在有两种,一种为AMI公司开发的,一种为Phoenix-award两家公司合并共同开发的;下面这张图为Phoenix-award开机自画面: Phoenix-award workstation BIOS V6.00PC,An Energy star Ally copyright(c) 1984...
- **VBA (Visual Basic for Applications)**: 一种微软开发的应用程序级编程语言,常用于扩展Microsoft Office等应用的功能。 #### 二、生成唯一值的意义 在GIS项目中,为每个要素分配唯一的标识符是非常重要的。...
在IT领域,模拟Windows平台下的写字板是一种常见的编程实践,旨在提供类似操作系统内置写字板的丰富文本编辑功能。这样的程序通常由熟练的程序员编写,旨在扩展标准写字板的功能,为用户提供更多的定制化选项和增强...
- **知识点解析**:追加查询是一种数据库查询,用于将一个表中的记录添加到另一个表中,而不删除目标表中原有的记录。这是一种常用的数据整合方法。 #### JavaScript获取最接近的整数 - **知识点解析**:在...
Windows XP(包括 Windows 2000)的控制台命令是在系统出现一些意外情况下的一种非常有效的诊断和测试以及恢复系统功能的工具。小编的确一直都想把这方面的命令做个总结,这次辛苦老范给我们整理了这份实用的秘笈。 ...
- 首先,在相关的数据库中创建两个数据表:一个是人员基本信息表,另一个是学历信息表。这两个表之间需要建立主键和外键的关系。 - 数据表Table4包含了人员的基本信息。 - 数据表Table5则包含了学历信息。 2. **...
Ribbon替代了传统的菜单栏和工具栏,提供了一种更为直观和组织有序的方式来访问命令和功能。这一创新设计旨在提高用户的工作效率,使得用户在处理任务时能够更快地找到所需的工具。 Ribbon的核心组成部分包括: 1....
在Lotus Domino Web应用程序中,根据用户的角色来控制页面内容的可见性是一种常见的安全措施。 **应用场景举例:** 根据用户角色来显示特定的内容: ```html (IsInRole("Admin") ? '' : 'none');"> 管理员专用区域...