Java向word文档添加图片水印

版权声明:本文为博主原创文章,如果喜欢欢迎收藏转载! https://blog.csdn.net/IT_zhang81/article/details/86636122

前言:

水印可以说是一个标识,有时我们希望向文档中插入公司名称作为水印,或者将公司logo插入到文档中作为水印。先来看看本地word文档如何插水印吧!

然后选择图片水印选择图片添加即可。

那么想要通过Java代码用程序将指定的图片当做水印插入到指定的word文档中,要怎么办呢?这需要开发者具备将activex控件集成到Java环境的能力。对于大部分Java开发工程师来说,仅仅解决单一的功能就要掌握activex控件,未免学习成本太大。

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

先看效果:

 部署步骤(只需4步)

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

去刚才下载的集成文件中找到lib,将里面的内容放在项目web-inf的lib中引入jar包,然后将web.xml的pageoffice配置引入到自己项目的wb.xml中

2.在父页面aaa.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('AddWaterMark.jsp' , 'width=1200px;height=800px;');">给Word文档添加水印</a>

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

<%@ page language="java" 
	import="java.util.*,com.zhuozhengsoft.pageoffice.*,com.zhuozhengsoft.pageoffice.wordwriter.*" 
	pageEncoding="utf-8"%>
<%@ taglib uri="http://java.pageoffice.cn" prefix="po" %>
<%
//******************************卓正PageOffice组件的使用*******************************
	PageOfficeCtrl poCtrl1 = new PageOfficeCtrl(request);
	poCtrl1.setServerPage(request.getContextPath()+"/poserver.zz"); //此行必须
	WordDocument doc =new WordDocument();
	//添加水印 ,设置水印的内容
	doc.getWaterMark().setImage("logo.jpg");
	
	poCtrl1.setWriter(doc);
	//设置打开方式
	poCtrl1.webOpen("test.doc", OpenModeType.docNormalEdit, "张三");
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    
    
    <title>添加水印</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->

  </head>
  
  <body>
    <!--**************   卓正 PageOffice组件 ************************-->
            <div style=" width:auto; height:750px;">
            <%=poCtrl1.getHtmlCode("PageOfficeCtrl1")%>
            </div>
             
  </body>
</html>

4.新建文件

新建一个名为test.doc的word文件(如果新建的是docx文件就将第三步的poCtrl1.webOpen("test.doc", OpenModeType.docNormalEdit, "张三");代码改为poCtrl1.webOpen("test.docx", OpenModeType.docNormalEdit, "张三");

将新建的test.doc文件随意编辑点内容放在AddWaterMark.jsp同级目录下。

然后找一张jpg图片。命名为logo.jpg放在AddWaterMark.jsp同级目录下。或者将第三步中的doc.getWaterMark().setImage("logo.jpg");代码改为doc.getWaterMark().setImage("相应的图片路径");

然后启动项目直接访问aaa.jsp点击链接.此时会提示安装插件,点击安装成功后提示注册,填写相关信息,填写注册码Q37LN-W8NI-KFSQ-LEY3Y就可以打开文档.

注意:如果需要更丰富的功能,大家可以去pageoffice官网下载示例代码直接将samples4文件夹扔到Tomcat的webapps下,启动Tomcat,浏览器访问http://localhost:8080/Samples4/index.html,查看示例中的下面一个链接,直接看samples4文件夹下AddWaterMark文件夹里面的代码.

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

如有侵权,请联系博主

猜你喜欢

转载自blog.csdn.net/IT_zhang81/article/details/86636122