需求: 添加页码

     <properties><easypoi.version>4.0.0</easypoi.version></properties>
        <!-- easypoi --><dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-base</artifactId><version>${easypoi.version}</version></dependency><dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-web</artifactId><version>${easypoi.version}</version></dependency><dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-annotation</artifactId><version>${easypoi.version}</version></dependency>
package com.platform.modules.sas.utils;
import org.apache.poi.xwpf.model.XWPFHeaderFooterPolicy;
import org.apache.poi.xwpf.usermodel.*;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.*;import java.io.*;/*** ClassName   FooterTest* Description add footer to word with poi* Author  Kalinda* Date  2020/7/1 13:54* Version 1.0*/
public class FooterTest {public static void main(String[] args) {try {// file pathFile is = new File("D:/test.docx");FileInputStream fis = new FileInputStream(is);// document objectXWPFDocument doc = new XWPFDocument(fis);// calling methodcreateFooter(doc);// or this method both ok!// createFooter(doc);// outputOutputStream os = new FileOutputStream("D:\\Test1.docx");doc.write(os);} catch (Exception e) {e.printStackTrace();}}public static void createFooter(XWPFDocument doc) {// create footerXWPFHeaderFooterPolicy policy = doc.getHeaderFooterPolicy();CTP ctpFooter = CTP.Factory.newInstance();XWPFParagraph[] parsFooter;// add style (s.th.)CTPPr ctppr = ctpFooter.addNewPPr();CTString pst = ctppr.addNewPStyle();pst.setVal("style21");CTJc ctjc = ctppr.addNewJc();ctjc.setVal(STJc.CENTER);ctppr.addNewRPr();// add everything from the footerXXX.xml you needCTR ctr = ctpFooter.addNewR();ctr.addNewRPr();CTFldChar fch = ctr.addNewFldChar();fch.setFldCharType(STFldCharType.BEGIN);ctr = ctpFooter.addNewR();ctr.addNewInstrText().setStringValue(" PAGE ");ctpFooter.addNewR().addNewFldChar().setFldCharType(STFldCharType.SEPARATE);ctpFooter.addNewR().addNewT().setStringValue("1");ctpFooter.addNewR().addNewFldChar().setFldCharType(STFldCharType.END);XWPFParagraph footerParagraph = new XWPFParagraph(ctpFooter, doc);parsFooter = new XWPFParagraph[1];parsFooter[0] = footerParagraph;policy.createFooter(XWPFHeaderFooterPolicy.DEFAULT, parsFooter);}public static void createDefaultFooter(final XWPFDocument document) {CTP pageNo = CTP.Factory.newInstance();XWPFParagraph footer = new XWPFParagraph(pageNo, document);CTPPr begin = pageNo.addNewPPr();begin.addNewPStyle().setVal("style21");begin.addNewJc().setVal(STJc.CENTER);pageNo.addNewR().addNewFldChar().setFldCharType(STFldCharType.BEGIN);pageNo.addNewR().addNewInstrText().setStringValue("PAGE   \\* MERGEFORMAT");pageNo.addNewR().addNewFldChar().setFldCharType(STFldCharType.SEPARATE);CTR end = pageNo.addNewR();CTRPr endRPr = end.addNewRPr();endRPr.addNewNoProof();endRPr.addNewLang().setVal("zh-CN");end.addNewFldChar().setFldCharType(STFldCharType.END);CTSectPr sectPr = document.getDocument().getBody().isSetSectPr() ? document.getDocument().getBody().getSectPr() : docx.getDocument().getBody().addNewSectPr();XWPFHeaderFooterPolicy policy = new XWPFHeaderFooterPolicy(document, sectPr);policy.createFooter(STHdrFtr.DEFAULT, new XWPFParagraph[] { footer });}}

Apache POI + Office Word 生成页码相关推荐

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

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

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

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

  3. [实用][更新中]Java Apache POI 打印Word文档工具(含文本替换,动态表格功能)

    [实用][更新中]Java Apache POI 打印Word文档工具(含文本替换,动态表格功能) 基于Apache POI对Word进行操作 一.基于Apache POI封装的word文档工具V1. ...

  4. java word apache poi 操作word模板。

    apache poi 操作word模板. 操作方式: 1.对于固定格,可以遍历格子然后替换其中指定的值例如在要替换的cell写入${example} 这样格式,遍历到之后替换. 2.对于需要增长的表格 ...

  5. java使用Apache poi根据word模板生成word报表(增加插入符号、控制分页功能)

    原文链接:https://blog.csdn.net/u012775558/article/details/79678701 根据原代码新增了插入符号和控制分页功能.改了类名,一些方法,新增一个符号类 ...

  6. 如何使用poi解析word生成html目录结构

    POI解析word目录结构 简介说明 认识下Word 我们先看下doc版本的word 我们再看下docx版本的word(今天的主角) 目录解析的原理介绍 写word文档时,我们是怎么设置目录? 我们看 ...

  7. org.apache.poi往word模板中填充数据(word2003)

    Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能.通过字面意思,我们大概知道这个API是可以用来做 j ...

  8. Apache POI 实现word(doc/docx)浏览器预览

    一.环境准备 1.jdk:1.8 2.maven:3.6 3.springboot:2.2.2 二.maven主要依赖 <dependency><groupId>org.apa ...

  9. java poi实现Word生成表格并下载至本地

    首先我来讲一下需要用到的类: XWPFDocument代表一个docx文档,其可以用来读docx文档,也可以用来写docx文档 XWPFParagraph代表文档.表格.标题等种的段落,由多个XWPF ...

最新文章

  1. 世界级数学大牛来了!2002年菲尔兹奖得主加盟华为
  2. python socketpool:通用连接池
  3. python生成100个随机数_Python_0——100闭区间产生3个随机数,两种方法排序
  4. 7、Linux中文件类型、文件属性
  5. hdu 2881(简单dp)
  6. Docker(三):镜像导入与导出、保存与加载、在Docker容器中安装软件
  7. POJ 1273 (基础最大流) Drainage Ditches
  8. flink面试题(需要逐个突破)
  9. GitOps:Kubernetes多集群环境下的高效CICD实践
  10. 七点讲透分布式架构的前世今生,面试官都不知道的概念来了
  11. mongodb java 多条件查询_MongoDB_Java连接mongo 使用Java多条件查询mongo数据
  12. 织梦Cms怎么一直服务器维护中,织梦后台搜索关键词维护中出现大量网址信息的处理办法...
  13. 二进制样式的字符串与byte数组互转函数示例
  14. 【WPF】WPF 命令
  15. 第十三讲:软考中高项13_战略管理、业务流程管理、知识管理
  16. 极大似然估计与贝叶斯估计
  17. 【正则】只保留中文、英文的正则表达式
  18. 免费网站域名去哪找?免费域名靠谱吗?
  19. 从头开始学Redisson--------限流器
  20. 删除按升序排列的单链表中的所有重复元素

热门文章

  1. HTML5期末大作业:仿唯品会购物网站设计——仿唯品会购物商城(5页) HTML+CSS+JavaScript 学生DW网页设计作业成品 商城网站设计
  2. 6.0 深度学习图片常见转换操作
  3. 木兰词·拟古决绝词柬友
  4. 打包php程序为安装文件,zblogphp主题和插件怎么打包成.zba格式文件
  5. 海康摄像机在Win10系统的Web浏览器中无法在线预览解决办法
  6. Luogu5234[JSOI2012]越狱老虎桥
  7. android21 下载,21下载2021安卓最新版_手机app官方版免费安装下载_豌豆荚
  8. android用户中心头像选择功能的方法实现
  9. MYSQL 基础篇(补)
  10. 校园采花经历(超级爆笑)