效果图是真正的水印,不是图片放上去的:

废话不多说 直接上代码

public static void main(String[] args) throws Exception {String path= "d:\\xxx.doc";InputStream input = new FileInputStream(path);DocWaterMarkUtils.docWaterMark(input,null,0,null);}/*** 输入流,加水印后输出** @param stream 输入流* @param outputStream 输出流* @param type 控制输出文件类型* @param waterName 显示水印文字内容*/public static void docWaterMark(InputStream stream, OutputStream outputStream,int type,String waterName){Document document = new Document();if (0 == type) {document.loadFromStream(stream, FileFormat.Doc);InsertTextWatermark(document.getSections().get(0),waterName);document.saveToStream(outputStream, FileFormat.Doc);} else if (1 == type){document.loadFromStream(stream, FileFormat.Docx);InsertTextWatermark(document.getSections().get(0),waterName);document.saveToStream(outputStream, FileFormat.Docx);}try {outputStream.flush();outputStream.close();} catch (IOException e) {log.error(e.getMessage(),e);}finally {try {if (outputStream != null) {outputStream.close();}} catch (Exception e) {log.error(e.getMessage(),e);}}}/*** 添加水印** @param section*/private static void InsertTextWatermark(Section section,String waterName){TextWatermark txtWatermark = new TextWatermark();txtWatermark.setText(StringUtils.notNullAndEmpty(waterName) ? waterName : xxxx);txtWatermark.setFontSize(FONT_SIZE);txtWatermark.setColor(Color.gray);txtWatermark.setLayout(WatermarkLayout.Diagonal);section.getDocument().setWatermark(txtWatermark);}

用到的第三方的jar包,地址是:
https://www.e-iceblue.cn/Downloads/Spire-Doc-JAVA.html

maven下载地址是:
https://www.e-iceblue.cn/licensing/install-spirepdf-for-java-from-maven-repository.html

建议本地测试看效果的话,直接下载jar包然后导入项目中,确定能满足需求的话再申请将依赖添加到公司私服.

jar导入项目方法:
项目中新建lib目录,然后jar复制粘贴进去,点jar右键 选择 addlib… 就可以了.

加油吧 少年.

java导出word加水印(已实现)相关推荐

  1. java 给word加水印,Java 实现在线给word 文档添加水印

    1:描述 在线编辑文档后需要添加专属水印.防止文档被盗用. 2:方案 用 pageoffice 提供的 添加水印的方法 3:核心代码 (1)后台方法添加文字水印 doc.getWaterMark(). ...

  2. 目前java导出word的6种解决方案

    文章转载自:http://www.cnblogs.com/lcngu/p/5247179.html 最近做的项目,需要将一些信息导出到word中.在网上找了好多解决方案,现在将这几天的总结分享一下. ...

  3. java 导出 word_怎么用java导出word

    展开全部 java导出word代码如下: package com.bank.util; import java.awt.Color; import java.io.FileOutputStream; ...

  4. java导出word的几种方式

    目前来看,java导出word大致有6种解决方案: 1:Jacob是Java-COM Bridge的缩写,它在Java与微软的COM组件之间构建一座桥梁.使用Jacob自带的DLL动态链接库,并通过J ...

  5. Java为图片加水印

    Java为图片加水印工具类 一.简介 使用Java在图片上加上水印,可以添加文字.图片 编写一个工具类的代码优化和整理 使用建造者模式提高工具类的可配置性 二.效果图 三.基本参数 // ++++++ ...

  6. JAVA实现图片加水印及Base64图片字符串加水印

    JAVA实现图片加水印及Base64图片字符串加水印 可将根据不同需求选择场景一,场景二来实现家水印操作,个人感觉比我上一遍文章<base64字符串加水印 >实在 场景一: 涉及上送过来的 ...

  7. java导出word纸张方向_java导出word的几种方式

    目前来看,java导出word大致有6种解决方案: 1:Jacob是Java-COM Bridge的缩写,它在Java与微软的COM组件之间构建一座桥梁.使用Jacob自带的DLL动态链接库,并通过J ...

  8. Java导出word 图片重复

    Java导出word 需要的库 <dependency><groupId>org.freemarker</groupId><artifactId>fre ...

  9. 【Java用法】使用Java导出word文档的解决方案(适用于从服务器上下载到本地电脑)

    本文目录 一.Controller 二.Service 接口类 三.ServiceImpl 实现类 四.Content-Type 类型与MIME Type类型对照表 最近在做一个word导出功能,需求 ...

  10. 【Java用法】使用Java导出word文档的解决方案(适用于Windows电脑)

    目录 实现方式一.通过原生的POI 实现方式二.通过Hutool工具包 步骤1.添加pom依赖 步骤2.编写几行代码 步骤3.启动项目,大功告成 实现的效果 最近在做一个word导出功能,需求非常简单 ...

最新文章

  1. 《编写高质量代码:改善c程序代码的125个建议》——建议4-1:整数转换为新类型时必须做范围检查...
  2. hbase 安装_HBASE 数据库入门级教程
  3. boost::hana::detail::ebo用法的测试程序
  4. sugarnms网管软件实用吗?
  5. php插不入数据原因,php程序插数据入mysql, 插入失败问题
  6. 查看硬件配置的Linux命令,LINUX 查看硬件配置命令的教程
  7. python graphviz中文乱码_graphviz画图与中文乱码等问题总结
  8. MyBatis映射文件6
  9. 力扣-48 旋转图像
  10. 怎么看其他人系统连接的服务器,别人如何连接云服务器
  11. Java对接百度翻译API
  12. txt数据文件的读写操作
  13. app开发流程:手机软件开发app的6个步骤
  14. 1194_SICP学习笔记_霍夫曼编码树
  15. c语言26字母排序,C语言,26个字母的冒泡排序
  16. 计算机电源的功能,电源屏主要功能及工作原理
  17. QLV格式怎么在线转换成MP4转换器
  18. 2020京东春招笔试题目
  19. [转]常用网络协议分析工具
  20. 特斯拉、华为们要用软件重新定义汽车?

热门文章

  1. 【MySQL】 锁机制:InnoDB引擎中锁分类以及表锁、行锁、页锁详解
  2. vue移动端点击事件延迟_如何解决移动端Click事件300ms延迟的问题?
  3. GIT (develop|MERGING)
  4. java实现正六面体染色
  5. 手把手带你在Java中用【数组】和【链表】实现栈
  6. noip2011 观光公交 (贪心)
  7. AndroidStudio如何删除Modle
  8. 硬盘已成为计算机性能提高瓶颈吗,固态硬盘停步 接口或已成为性能瓶颈?
  9. C++面向对象程序设计
  10. idear-配置mybatis插件