怎么用JS读取WORD文档,并展示在页面,速求答案
在安装Office2003以后,有一个ActiveX控件被安装到了系统中,这个控件位于“Program Files/Microsoft Office/OFFICE11/owssupp.dll”。
通过这个控件,客户端页面上的JavaScript就可以激活本地的Office软件,来实现打开、编辑Office文档。
(另,Office XP应该就已经包含这个ActiveX控件了。
)首先,用Script创建一个本地的对象:openDocObj = new ActiveXObject("SharePoint.OpenDocuments.2"); // 为了兼容Office XP,可以创建“SharePoint.OpenDocuments.1”然后,调用openDocObj的相应的方法。
比如打开服务器上的一个Office文档:openDocObj.ViewDocument("http://www.abc.com/documents/sample.doc");openDocObj对象会根据参数中不同的Office文档类型(.doc、.xls、.ppt)来打开不同的程序(Word、Excel、PowerPoint)。
ViewDocument()方法还有一个重载签名,可以让我们手工指定激活哪个程序来打开文档:openDocObj.ViewDocument("http://www.abc.com/documents/sample.doc", 要激活的程序的ProgID);那么要打开Office程序在线编辑文件又如何?openDocObj.EditDocument("http://www.abc.com/documents/sample.doc");就可以直接激活Word,在Word里面编辑文档,然后直接点击Word里面的保存功能,就可以将文件保存会服务器上了。
注意:为了让Word能将编辑后的文档直接保存会服务器,访问Web站点的当前上下文的Windows Identity必须对服务器的相应目录(即“http://www.abc.com/documents”这个虚拟目录所对应的服务器上的物理路径)有相应的写权限,否则保存动作会失败。
编辑完成后,EditDocument()会返回一个bool值,来反映编辑操作是否成功。
我们还可以通过打开服务器上的一个文档模版,来创建一个新的文档:openDocObj.CreateNewDocument("http://www.abc.com/documents/sampleTemplate.dot", "http://www.abc.com/documents/");就可以使用“http://www.abc.com/documents/sampleTemplate.dot”这个模版来创建一个新的文档,默认新文档的保存地点是“http://www.abc.com/documents/”。
创建新文档时使用的程序取决于模版文件的类型(比如.dot模版会对应Word)。
新文档的保存同样需要注意权限问题。
CreateNewDocument()方法同样会返回一个bool值来反映操作是否成功。
CreateNewDocument()方法的第一个参数,除了可以使用一个模版的地址外,还可以直接指定为希望用来创建新文档的客户端程序的ProgID。
test_wordfunction Validator(){var openDocObj;openDocObj = new ActiveXObject("SharePoint.OpenDocuments.2");openDocObj.EditDocument("C:/Inetpub/wwwroot/前言.doc");}</script>
如何用js直接将word打印出来
web页面无法支持预览office文档,但是却可以预览PDF、flash文档,所以大多数解决方案都是在服务端将office文档转换为pdf,然后再通过js的pdf预览插件(谷歌浏览器等已经原生支持嵌入PDF文档)进行查看。
Aspose 后台转换可以使用Aspose将office文档转换为PDF格式,Aspose功能强大,支持编辑/转换word、excel、ppt、pdf等,且API操作简便快速。
Aspose是收费的,你需要下载破解版本。
除了Aspose可以编辑文档,类似的还有NPOI 、POI等。
1、利用flexPaper预览swf文件,百度文库就是这种方式 由于现在flash插件用得已经很少,此处不再赘述,详细请看这里2、pdfjs pdfjs是firefox浏览器内置的pdf预览插件,由于是开源的,我们也可以使用它,ie版本只支持ie9/ie9+。
它通过将pdf转换为html元素再添加一些css3的样式达到pdf的预览效果,文档样式与原文档几乎没有太大区别。
3、在页面中嵌入多媒体对象(PDF、flash、video等) 缺点是不同的浏览器支持及呈现不一致,比如pdf目前只有webkit浏览器原生支持嵌入,而且移动端的webkit浏览器也是不支持的。
PDF嵌入可以采用已封住好操作的插件PDFObject,也可以通过浏览器API自行编写。
另外,个人建议可以用md(markdown,拥有类似word文档的操作,可在线修改、预览,前后台数据调用非常方便)文件来保存在线预览的文档,不要用office类的文件格式保存,关于markdown的用法可参考其官网:网页链接
OA系统如何实现Word文档在线生成
展开全部 word在线编辑一般来说两种途径。
一种是利用插件,比如PageOffice。
好处是服务端有一整套的开发接口,劣势是需要安装插件,客户端需要有Word等Office应用程序安装,不同的客户端环境不同可能造成后继使用过程中的维护量。
还有一种是无插件的方式,Office 365就是典型的,不过如果是私有化部署,就不能用Office 365了。
还有一个是uzer.me,能提供无插件的原生Office编辑,提供JS SDK和REST API,各种编程语言都能对接。
好处是无插件,劣势是只支持webRTC的浏览器,比如火狐、谷歌,360极速等,IE需要安装插件后才能支持。
如果只是在线编辑,类似Word的模式,那么其实更多是一个富文本的编辑器,这个用HTML就可以实现,有一些开源的工具的。
转载请注明出处51数据库 » js在线word文档
-趴在墙头等红杏