Maven 引入依赖

<dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>3.17</version>
        </dependency>
        
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>3.17</version>
        </dependency>

Java 代码:

package com.daydayup.study001.watermark;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

import org.apache.poi.xwpf.model.XWPFHeaderFooterPolicy;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFHeader;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;

public class WatermarkForWord {

public static void main(String[] args) throws FileNotFoundException, IOException {
        XWPFDocument doc= new XWPFDocument();

// the body content
          XWPFParagraph paragraph = doc.createParagraph();
          XWPFRun run=paragraph.createRun();  
          run.setText("The Body:");

// create header-footer
          XWPFHeaderFooterPolicy headerFooterPolicy = doc.getHeaderFooterPolicy();
          if (headerFooterPolicy == null) headerFooterPolicy = doc.createHeaderFooterPolicy();

// create default Watermark - fill color black and not rotated
          headerFooterPolicy.createWatermark("Watermark");

// get the default header
          // Note: createWatermark also sets FIRST and EVEN headers 
          // but this code does not updating those other headers
          XWPFHeader header = headerFooterPolicy.getHeader(XWPFHeaderFooterPolicy.DEFAULT);
          paragraph = header.getParagraphArray(0);

// get com.microsoft.schemas.vml.CTShape where fill color and rotation is set
          org.apache.xmlbeans.XmlObject[] xmlobjects = paragraph.getCTP().getRArray(0).getPictArray(0).selectChildren(
            new javax.xml.namespace.QName("urn:schemas-microsoft-com:vml", "shape"));

if (xmlobjects.length > 0) {
           com.microsoft.schemas.vml.CTShape ctshape = (com.microsoft.schemas.vml.CTShape)xmlobjects[0];
           // set fill color
           ctshape.setFillcolor("#d8d8d8");
           // set rotation
           ctshape.setStyle(ctshape.getStyle() + ";rotation:315");
           //System.out.println(ctshape);
          }

doc.write(new FileOutputStream("CreateWordHeaderFooterWatermark.docx"));
          doc.close();

}

}

Java 使用POI 给Word添加水印相关推荐

  1. POI给WORD添加水印(亲测可用)

    POI给WORD添加水印(亲测可用) 最近要做电子合同,客户提出为了安全性要将合同中都添加水印,这个之前在网上看到过,貌似使用POI很好加.去网上一搜发现,清一色的只有一篇文章,并且这段代码是用不了的 ...

  2. java使用poi给word添加多个水印

    限制高版本的docx 一.解决poi给word添加水印遇到的问题: 1.遇到有页眉的word时水印添加失败 2.水印最底层被图片表格覆盖 二.解决思路: 1.把原来的页眉删除或者覆盖 2.水印只能在底 ...

  3. apache poi使用例_使用java Apache poi 根据word模板生成word报表例子

    [实例简介] 使用java Apache poi 根据word模板生成word报表 仅支持docx格式的word文件,大概是word2010及以后版本,doc格式不支持. 使用说明:https://b ...

  4. java使用poi读写word中的图片(二)

    文章目录 准备工作 简单读取 复杂读取 查看Word的XML 特别说明:Word中的Svg图片 第一种写入图片到Word中的方式 第二种写入图片到Word中的方式 最后 准备工作 这里就不在复述了,可 ...

  5. 使用java Apache poi 根据word模板生成word报表

    使用java Apache poi 根据word模板生成word报表 使用poi读取word模板,替换word中的{text}标签,并根据自定义标签循环生成表格或表格中的行. 代码示例下载:https ...

  6. Java使用Poi填充Word表格模板(图片和文字)

    Java使用Poi填充Word表格模板(图片和文字) **** 由于个人需求需要对表格模板进行操作,所以本文章只对表格进行替换数据操作,没有段落,没有循环遍历,没有延伸!!!!!(后续补充!!!) * ...

  7. java word 2003_[Java教程]POI 读取word (word 2003 和 word 2007)(转)

    [Java教程]POI 读取word (word 2003 和 word 2007)(转) 0 2017-09-27 16:00:29 POI 读取word (word 2003 和 word 200 ...

  8. java使用poi在word模板中替换柱状图、折线图、饼图、表格、文本、图片

    介绍 java使用poi在word模板中替换柱状图.折线图.饼图.表格.文本.图片 软件架构 安装教程 环境搭建:jdk1.8.0_291.maven1.8.0_291 IDEA工具:IntelliJ ...

  9. java利用POI替换word文档中的标签

    java利用POI替换word文档中的标签 <dependency><groupId>org.apache.poi</groupId><artifactId& ...

  10. java使用poi操作word模板,插入图片、段落、表格

    java使用poi操作word插入图片.段落.表格 其他链接 准备工作 创建word模板.docx文件 编写模板格式.xml文件 java上手poi maven依赖 使用到的包 具体应用 对应封装方法 ...

最新文章

  1. 闪迪U3利用工具U3-Pwn
  2. php 查看文件锁定状态_PHP flock 文件锁详细介绍
  3. CM: Create BAdI implementation for Webservice enabled word document
  4. 活体检测python_活体检测很复杂?仅使用opencv就能实现!(附源码)!
  5. 月薪15k起,想进入这个行业有哪些书值得读?
  6. 数字信号 fft c源码_如何制作一个简单的人体动态识别微信小程序(附源码)
  7. python实战1.1——根据1.0做词云图
  8. Linxu 输入子系统分析
  9. Java Web 学生选课管理系统
  10. springcloud篇面试宝典
  11. 揭秘黑客攻击内幕和20个黑客相关术语
  12. android渗透测试工具drozer,利用drozer进行Android渗透测试
  13. SAP ERP常用事务代码和表
  14. 掌上军营服务器信息,智慧军营之视频监控系统
  15. 狗年拜年php源码,2018新年拜年贺词【2018狗年拜年贺词】
  16. 如何开发一款电商app小程序
  17. 搜集此类软件(不少于4个),针对其特点,价格(包括免费),适用范围等做出评估。按照你的分析来说明,此软件可能存在的盈利方式以及可能投入的资金,以及,如果你来开发此类软件,你认为应该如何投资或者评估。
  18. SpringCloud-5-Hystrix
  19. 字符串分割split:将一个字符串通过指定的分隔符分割成若干子串
  20. 论文解读:《DeepIDC:基于异构信息和深度学习的注射用药物组合预测框架》

热门文章

  1. JAVA书签方式导出Word
  2. linux安装python教程视频_新手开发者的极简Linux上手Python视频教程
  3. Docker镜像篇(2) - 玩转Dockerfile指令 - FRM、MAINTAINER、LABEL、COPY
  4. 有关网络安全基础知识
  5. 【U8+】用友U8+16.1不自动删除历史的自动备份文件
  6. PAM-PDMDAAC聚丙烯酰胺-聚二甲基二烯丙基氯化铵/PEI-P(Asp-Hyd-ADR 聚乙烯亚胺-聚天冬氨酸
  7. [CareerCup] 9.8 Represent N Cents 组成N分钱
  8. MySQL技能树学习体验及期望
  9. 苹果发布会总结:Mac 三产品线更新自研 M1 芯片,尝鲜只要 5299 元
  10. 解决git push报错:The requested URL returned error: 403