java 实现在线创建word 文件,并保存到服务器

一、在开发OA办公或与文档相关的Web系统中,难免会遇到动态生成word文档的需求,为了解决工作中遇到导出word文档的需求,前一段时间上网找了一些资料,在word导出这方面有很多工具可以使用,jacob、poi、java2word、itext。jacob要求服务器必须是windows操作系统,服务器上还必须安装office软件,果断放弃!poi需要针对doc和docx两种格式写不同的代码,增加了程序的复杂度。java2doc 是对 jacob 的封装,同样放弃!最后选定了用itext来导出word,网上一些资料说itext导出word功能太简单,通过试用之后,封装工具类,使用起来确实挺方便,但是导出的word文档在细节方面很难达到要求,比如:字体、行距、字体间距、首行缩进等。由于itext导出的word有各种各样的小问题,只能另找其他的解决方案,经过一个朋友推荐,可用PageOffice组件来导出word,其效果能与用户需求的word文档达到完美的一致,而且编程接口简单,调用很方便。

今天主要介绍用 pageoffice  组件在线创建一个新的文档。

二:核心代码

798cf9c27b6b339b0114e066c04d0db96d2.jpg

三、具体的实现过程

具体实现过程

1.官网http://www.zhuozhengsoft.com/dowm/下载集成文件,引入jar包,配置web.xml

2.在父页面index.jsp(需要打开文档的页面)放一个a标签或者button

写a标签之前先引入pageoffice需要的js文件

<script type="text/javascript" src="/jquery.min.js"></script>
<script type="text/javascript" src="/pageoffice.js" id="po_js_main"></script>

然后添加a标签 

<a href="javascript:POBrowser.openWindowModeless('CreatWord.jsp' , 'width=1200px;height=800px;');">创建word</a>

3.在父页面同级目录下创建一个名为CreatWord.jsp的文件

<%@ page language="java"
	import="java.util.*,com.zhuozhengsoft.pageoffice.*,com.zhuozhengsoft.pageoffice.wordwriter.*"
	pageEncoding="utf-8"%>
<%
//******************************卓正PageOffice组件的使用*******************************
	//设置PageOffice服务器组件
	PageOfficeCtrl poCtrl1 = new PageOfficeCtrl(request);
	poCtrl1.setServerPage(request.getContextPath()+"/poserver.zz"); //此行必须
	
	//设置保存页面
	poCtrl1.setSaveFilePage("SaveFile.jsp");
    poCtrl1.webCreateNew("张佚名",DocumentVersion.Word2007);
   
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>   
    <title>创建文件</title>
  </head>
  
  <body>
  <script type="text/javascript">
      
    </script>
    <div style=" width:900px; height:700px;">
          <%=poCtrl1.getHtmlCode("PageOfficeCtrl1")%>
    </div>
  </body>
</html>

4 .在CreatWord.jsp同级目录下创建一个名为SaveFile.jsp的文件

FileSaver fs=new FileSaver(request,response);
fs.saveToFile("d:\\aa.doc");
fs.close();

启动项目直接访问.此时会提示安装插件,点击安装成功后提示注册,填写相关信息,填写注册码    I7TGD-71VV-FYD8-4NMYP   就可以打开文档.然后编辑保存,在D盘下查看新建的文档

最终效果

http://www.pageoffice.cn:8080/Samples4/

访问上面的链接看看下面对应的示例

4f8c1d493ee5a4f84ecf77c22b7cf4b9007.jpg

刚开始接触pageoffice的话,也可以看视频快速上手http://www.zhuozhengsoft.com/Technical/

3c5518985d3bedcfd3e2ca09e76ca92c8c0.jpg

 

转载于:https://my.oschina.net/u/3507515/blog/3039320

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要实现Java Vue实现Word在线预览,可以通过以下步骤: 1. 在Java后端,使用Apache POI库来读取Word文档内容。POI库可以解析Word文档的各种元素,例如段落、表格、图片等。 2. 将读取到的Word文档内容以HTML格式返回给Vue前端。可以使用POI库提供的API将Word内容转换成HTML格式,然后通过Java后端将HTML内容返回给前端。 3. 在Vue前端,使用相应的组件来渲染并显示HTML内容。可以使用著名的富文本编辑器Quill或者其他类似的库,将返回的HTML内容进行渲染,以实现Word文档的显示。 4. 在Vue前端,添加相应的控件和功能来支持在线预览Word文档。可以添加双击文档打开、缩放、左右滚动等交互功能,以提升用户体验。 5. 在Vue前端,添加样式和布局来美化页面。可以采用CSS框架如Bootstrap或Element UI来实现页面的美化和响应式布局,提供更好的用户界面。 需要注意的是,在这个过程中,Java后端负责处理Word文档的读取和转换,将其转化为HTML格式。而Vue前端负责将这个HTML内容进行渲染和显示,提供给用户在线预览的功能。这样,用户就可以通过浏览器直接在线预览Word文档了。 ### 回答2: 要实现Java Vue实现Word在线预览,可以通过以下步骤进行: 1. 首先,使用Vue框架构建前端页面。可以使用Vue的脚手架工具来创建项目,并在项目中安装所需的依赖项(如axios用于发送HTTP请求,element-ui或其他UI库用于页面布局等)。 2. 在Vue的前端页面中创建一个组件,用于上传Word文件。可以使用HTML的`input`元素,并为其添加`type="file"`,当用户选择Word文件时,会触发相应的事件。 3. 在Vue组件中使用axios发送POST请求,将Word文件提交给后端。可以使用axios的`FormData`对象来创建一个表单对象,并将Word文件附加到表单中。 4. 在后端使用Java编写API,用于接收前端提交的Word文件。可以使用Spring Boot框架来搭建Java后端。在API中,使用Java文件处理功能将接收到的Word文件保存服务器本地的某个目录中。 5. 使用Java的Apache POI库来解析Word文件。Apache POI提供了对Word文件的读取和操作功能,在后端使用POI库来读取Word文件的内容。 6. 后端将读取到的Word文件内容返回给前端,可以将内容转换为HTML格式,并将其嵌入到前端页面中的一个`<iframe>`元素中。 7. 前端收到后端返回的HTML内容后,使用`<iframe>`元素将其展示在页面中。可以通过设置`<iframe>`元素的`srcdoc`属性,将HTML内容嵌入其中,并通过CSS样式设置适当的宽度和高度。 8. 最后,用户就可以在前端页面中预览上传的Word文件了。可以通过滚动页面来查看整个文件内容,或者自定义一些导航按钮或操作来进行文件的查看和操作。 通过以上步骤,就可以实现Java Vue实现Word在线预览的功能了。要注意的是,这只是一个简单的实现示例,具体的实现方式可能因具体项目需求而有所差异。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值