java 在线给word 文件插入图片,并设置图片大小

自古美人都是妖i 提交于 2020-01-08 12:06:28

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

一、前言:

有时我们想在一篇word文档中的指定位置添加一张服务器上的图片,并且并且设置图片大小。这个对文档的操作一定是需要第三方api的。市面上对文档处理的插件有POI以及openoffice等等,学习成本很大,关键是通过这些插件对文档的操作功能也是十分有限。

所以我们今天就要介绍一个中间件技术——pageoffice,此中间件技术已经将 在web系统操作office文档的大部分功能整合完毕,大家只需要关注自己web系统的业务逻辑即可,学习成本低,且功能很丰富。下面我们来实战将pageoffice集成一下


二、核心代码

插入图片的代码

DataRegion dataRegion = worddoc.openDataRegion("PO_开头的书签名称");
dataRegion.setValue("[image]doc/1.jpg[/image]");

插入图片并设置图片大小的代码

data1.setValue("[image width=500.2 height=200]doc/1.jpg[/image]");

注意:500.2单位是磅

具体实现过程

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

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

写a标签之前先引入pageoffice需要的js文件(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('Word.jsp' , 'width=1200px;height=800px;');">打开文件</a>

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

<%@ page language="java"
	import="java.util.*,com.zhuozhengsoft.pageoffice.*,com.zhuozhengsoft.pageoffice.wordwriter.*"
	pageEncoding="utf-8"%>
<%
	//******************************卓正PageOffice组件的使用*******************************
	PageOfficeCtrl poCtrl1 = new PageOfficeCtrl(request);
	poCtrl1.setServerPage(request.getContextPath()+"/poserver.zz"); //此行必须

	WordDocument worddoc = new WordDocument();

	//先在要插入word文件的位置手动插入书签,书签必须以“PO_”为前缀
	//给DataRegion赋值,值的形式为:"[word]word文件路径[/word]、[excel]excel文件路径[/excel]、[image]图片路径[/image]"
	DataRegion data1 = worddoc.openDataRegion("PO_p1");
	data1.setValue("[image width=100  height=100 ]doc/1.jpg[/image]");


	poCtrl1.setWriter(worddoc);
	poCtrl1.setCaption("演示:后台编程插入图片到数据区域并设置图片大小(企业版)");

	

	poCtrl1.webOpen("doc/test.doc", OpenModeType.docNormalEdit, "张三");
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>演示:后台编程插入图片到数据区域(专业版、企业版)</title>

</head>
<body>
  
    <form id="form1" style="height: 100%;">
    <div style="height: 700px; width: auto;">
        <!--**************   PageOffice 客户端代码开始    ************************-->
        	        <%=poCtrl1.getHtmlCode("PageOfficeCtrl1")%>
        <!--**************   PageOffice 客户端代码结束    ************************-->
    </div>
    </form>
</body>
</html>

最终的效果

(1)设置图片大小为 宽高都为100 的时候

(2)图片大小宽高都为500的时候

启动项目直接访问.此时会提示安装插件,点击安装成功后提示注册,填写相关信息,填写注册码    I7TGD-71VV-FYD8-4NMYP   就可以打开文档.

注意设置图片大小的功能只有企业版才能支持。

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

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!