方便生成doc和docx的相关代码资源

这是jar资源

有很多的包是关于生成文档及内容的控制的,比方最原始的POI,还有基于此开发的阿里的FastExcel之类的,但是使用起来还是比较麻烦,最近发现一个好玩意儿 Spire,一个第三方封装的也是基于POI的,他们的官方网址在

唯一的缺点是这个包很大有七八十兆左右

下面我简单的使用这个来生成内容看一下

加载资源读出来文档内容

import com.spire.doc.*;/*** @ClassName SpireDoc* @Author Qin* @Date 2020/9/12 13:45* @Description SpireDoc* @Version 1.0*/
public class SpireDoc {String desPath = "D://des.doc";String path = "D://src.doc";@Testpublic void testSpiredDoc() {//加载Word文档Document document = new Document(path);String text = document.getText();System.out.println(text);}

读出内容替换掉然后再保存

import com.spire.doc.*;/*** @ClassName SpireDoc* @Author Qin* @Date 2020/9/12 13:45* @Description SpireDoc* @Version 1.0*/
public class SpireDoc {String desPath = "D://des.doc";String path = "D://src.doc";@Testpublic void testSpiredDoc() {//加载Word文档Document document = new Document(path);document.replace("year", "2020", false, true);document.replace("season", "2", false, true);document.replace("*pic1*", "2020", false, true);document.replace("*pic2*", "2020", false, true);//保存文档document.saveToFile(desPath, FileFormat.Doc);}

上述代码会在文档中查找对应的内容然后替换成你想要替换的内容,有些同志经常会被让用模板来生成报告什么的,可以用特殊字符来占位,然后从数据库提取数据计算得到后替换生成。

替换图片


@Testpublic void replacePic() {Document document = new Document();document.loadFromFile(path);TextSelection[] selections = document.findAllString("*pic1*", true, true);//用图片替换文字int index = 0;TextRange range = null;for (Object obj : selections) {TextSelection textSelection = (TextSelection) obj;DocPicture pic = new DocPicture(document);pic.loadImage(picpath);pic.setHeight(300);pic.setWidth(500);range = textSelection.getAsOneRange();index = range.getOwnerParagraph().getChildObjects().indexOf(range);range.getOwnerParagraph().getChildObjects().insert(index, pic);range.getOwnerParagraph().getChildObjects().remove(range);}//保存文档document.saveToFile(desPath, FileFormat.Doc);}

相关代码可以控制图片大小,位置、、、、、

在文档中生成表格替换表格

@Testpublic void controlExcel() throws FileNotFoundException {String out = "D://out.doc";//加载测试文档Document doc = new Document();InputStream in = new FileInputStream(desPath);doc.loadFromStream(in, FileFormat.Auto);String[][] data ={new String[]{"Winny", "女", "综合", "0109"},new String[]{"Lois", "女", "综合", "0111"},new String[]{"Jois", "男", "技术", "0110"},new String[]{"Moon", "女", "销售", "0112"},new String[]{"Vinit", "女", "后勤", "0113"},};//获取表格Section section = doc.getSections().get(0);// getTables.get()  0,第一个表格 以此类推Table table = section.getTables().get(1);//table.getRows().insert(2,table.addRow());//在表格中第3行插入一行//table.addRow(4);//默认在表格最下方添加4个单元格//table.addRow(true,2);//带格式在最后一行添加2个单元格//table.addRow(false,2);//不带格式在最后一行添加2个单元格//添加数据到剩余行for (int r = 0; r < data.length; r++) {table.addRow();//默认在表格最下方插入一行TableRow dataRow = table.getRows().get(r + 1);for (int c = 0; c < data[r].length; c++) {dataRow.getCells().get(c).getCellFormat().setVerticalAlignment(VerticalAlignment.Middle);dataRow.getCells().get(c).addParagraph().appendText(data[r][c]);}}//保存文档doc.saveToFile(out, FileFormat.Docx_2013);doc.dispose();}

对表格的大小位置、背景颜色、文字颜色、行与列合并之类都可以进行操作。

好了相关的介绍简单到这里了,具体可以看他们的官网,因为他们是收费的,最后生成的内容会有水印,去水印会另外收费。我的资源嘛,你们可以看一下,自己试一下。

参见文章开始链接

生成doc和docx教程相关推荐

  1. 如何使用freeMarker生成doc、docx文档

    如何使用freeMarker生成doc.docx.pdf文件 freeMarker是什么 doc和docx有什么区别 如何生成doc文档(带图片) 如何生成docx文档,以及将其生成pdf文档 fre ...

  2. 利用Freemarker模板生成doc或者docx文档(转载整理)

    可以直接看主要代码实现 doc作为模板文件生成指定格式的doc文件 实现逻辑 1.把作为模板的doc文件另存为xml文件 2.凡是需要填充的数据用${xxxx}替代 3.利用Template类将数据填 ...

  3. 优化二、XWPFDocument 生成doc、docx 功能优化(循环数据可不用手动添加)可在表格中插入图片

    接上一篇文章 注:Consts 类放到了 第三篇文章里面 ** 一.优化点: ** 优化过后 直接调用 CreateWordPoiUtils 中listToArray 方法 即可: 参数为 对象集合 ...

  4. Freemark 模板生成doc文件,xml doc文件转docx 文件,docx文件转pdf文件

    freemark 模板生成doc文件,此doc文件为xml格式,无法直接转pdf 需要doc转docx文件,才能转pdf 方法1:docx4j 转 pdf 方法2: e-iceblue docx 转 ...

  5. word文档生成系列:doc和docx插入多图

    系列文章目录 第一章:springboot下生成复杂word文档方案 在Word软件里面制作模板 第二章:根据模板导出word,复合格式表格生成.可变列表格生成 第三章:doc和docx插入多图 第四 ...

  6. 如何通过WPS将Word(doc、docx)转换为PDF格式的教程方法

    如何通过WPS将Word(doc.docx)转换为PDF格式的教程方法 作者:张国军_Suger 开发工具与关键技术:WPS         很多时候,有些朋友们不知道如何来通过WPS来讲Word(d ...

  7. java利用Freemarker模板生成格式友好的doc或者docx文档

    之前写过一篇利用Freemarker模板生成doc的博客,不过那个博客有点缺陷,不支持生成docx格式的文档.所以,这里补充一篇,生成docx或doc格式的文档以具体的docx模板或者doc模板为主. ...

  8. 将Doc或者Docx文档处理成html的代码逻辑;统计word中的字数,段数,句数,读取word中文档内容的代码逻辑...

    将Doc或者Docx文档处理成html的代码逻辑 下面是maven的配置代码: <!-- 文档处理所需的jar的依赖 --><dependency><groupId> ...

  9. 将Doc或者Docx文档处理成html的代码逻辑;统计word中的字数,段数,句数,读取word中文档内容的代码逻辑

    将Doc或者Docx文档处理成html的代码逻辑 下面是maven的配置代码: <!-- 文档处理所需的jar的依赖 --><dependency><groupId> ...

  10. java docx转html实例_Java实现将word转换为html的方法示例【doc与docx格式】

    Java实现将word转换为html的方法示例[doc与docx格式] 发布于 2020-6-14| 复制链接 摘记: 本文实例讲述了Java实现将word转换为html的方法.分享给大家供大家参考, ...

最新文章

  1. UVA11059 Maximum Product
  2. 【Python】Python语言学习:设计模式、单例模式
  3. 脑梗塞康复治疗,选择技术很重要!
  4. Linux闲时自动抢占GPU脚本
  5. 源码与tarball套件管理程序笔记摘录
  6. 要闻君说:Intel要“起底”新任CEO了?微软停止支持Win 7?OPPO加入WPC无线充电联盟,15W无线闪充技术呼之欲出!...
  7. Android位置服务介绍,并介绍如何通过LocationManager对象获取位置信息
  8. 采购季:云服务不断进化为企业带来更多选择
  9. webbrowser 访问iframe拒绝访问_获取文件夹拒绝访问权限
  10. 杨凌职业技术学院计算机专业宿舍,杨凌职业技术学院宿舍条件怎么样
  11. 数据库操作--批量修改数据库表名及字段名大小写转换及首字母大写+删除没有数据无用的表...
  12. c语言形式参数若为b 4,4月全国计算机等级二级C笔试考试题目
  13. SPI通信协议以及概念
  14. 手把手教你注册谷歌账号 亲测有效 快来学
  15. 模板类继承后找不到父类函数的问题
  16. GPU显存占满利用率GPU-util为0
  17. 【圣诞节限定】教你用Python画圣诞树,做个浪漫的程序员
  18. VMware虚拟机连接外网
  19. 【Nexus】Nexus简介与安装
  20. 超级大数据公司即将诞生 全球招募大数据领域人才

热门文章

  1. allegro 尺寸标注操作未到板边的处理
  2. 2021年天猫淘宝双12,京东双十二活动时间以及玩法介绍
  3. python目前版本强势英雄_最强竟然不是灭霸|用Python给漫威和DC英雄综合实力排位...
  4. pdf拆分成一页一页,详细步骤介绍
  5. Java实现微信聊天记录生成器
  6. Vivado中各个文件的含义
  7. cad卸载_想重新安装CAD提示已经安装?不会卸载?进来教你卸载CAD
  8. IDEA 导入 czml-writer
  9. 无法定位序数XX于动态链接库XX.dll的解决的方法
  10. 计算机台式内存条,台式电脑怎么装内存条_台式电脑加装内存条方法-win7之家