首页 > 其他分享 >pageoffice在线打开word文件生成表格

pageoffice在线打开word文件生成表格

时间:2024-04-18 13:45:03浏览次数:20  
标签:table1 word 表格 PageOfficeNetCore WordWriter pageoffice PO

转载:数据区域生成表格

# 数据区域生成表格

注意

本文中展示的代码均为关键代码,复制粘贴到您的项目中,按照实际的情况,例如文档路径,用户名等做适当修改即可使用。

在实际项目的开发中会遇到这样的需求:要求在生成word文件的时候,在文件的指定位置动态生成表格并填充。

public Table createTable(int numRows,
                         int numColumns,
                         WdAutoFitBehavior autoFitBehavior)
                  throws java.lang.Exception

参数:

  • numRows 新表格的行数。
  • numColumns 新表格的列数。
  • autoFitBehavior 用于设置 Word 调整表格大小的“自动调整”规则。

数据区域生成表格通常有两种使用场景:

  1. 在word文档已有的指定的数据区域位置动态生成表格。
Java
//在word中指定的"PO_table1"的数据区域内动态创建一个3行5列的表格
Table table1 = doc.openDataRegion("PO_table1").createTable(3, 5, WdAutoFitBehavior.wdAutoFitWindow);
.Net Core
//在word中指定的"PO_table1"的数据区域内动态创建一个3行5列的表格
PageOfficeNetCore.WordWriter.Table table1 = 
      doc.OpenDataRegion("PO_table1").CreateTable(3, 5, PageOfficeNetCore.WordWriter.WdAutoFitBehavior.wdAutoFitWindow);
  1. 在 word 文档开始或者末尾处动态生成表格。这种场景就需要依赖 PageOffice 预留的两个特殊数据区域:[HOME]和[END]动态创建数据区域,然后根据新生成的数据区域动态生成表格。
Java
//在word文档的末尾处动态创建一个3行5列的表格。具体代码步骤是先根据PageOffice预留[END]数据区域动态创建"PO_table1",然后在"PO_table1"处动态创建3行5列的表格。
Table table1 = doc.createDataRegion("PO_table1",DataRegionInsertType.After, "[END]").createTable(3, 5, WdAutoFitBehavior.wdAutoFitWindow);
.Net Core
//在word文档的末尾处动态创建一个3行5列的表格。具体代码步骤是先根据PageOffice预留[END]数据区域动态创建"PO_table1",然后在"PO_table1"处动态创建3行5列的表格。
PageOfficeNetCore.WordWriter.Table table1 =
      doc.CreateDataRegion("PO_table1", PageOfficeNetCore.WordWriter.DataRegionInsertType.After, "[END]").CreateTable(3, 5, PageOfficeNetCore.WordWriter.WdAutoFitBehavior.wdAutoFitWindow);

# 后端代码

例如:在当前 word 文件的末尾处生成一个 3 行 5 列的表格并动态填充。

Java
PageOfficeCtrl poCtrl = new PageOfficeCtrl(request);
WordDocument doc = new WordDocument();
DataRegion dr = doc.createDataRegion("PO_table1",DataRegionInsertType.After, "[END]");
Table table1 = dr.createTable(3, 5, WdAutoFitBehavior.wdAutoFitWindow);
for (int i = 1; i < 4; i++) {
    table1.openCellRC(i, 1).setValue("AA" + String.valueOf(i));
    table1.openCellRC(i, 2).setValue("BB" + String.valueOf(i));
    table1.openCellRC(i, 3).setValue("CC" + String.valueOf(i));
    table1.openCellRC(i, 4).setValue("DD" + String.valueOf(i));
    table1.openCellRC(i, 5).setValue("EE" + String.valueOf(i));
}
poCtrl.setWriter(doc);
//打开Word文件
poCtrl.webOpen("D:\\template1.docx", OpenModeType.docNormalEdit, "张三");
.Net Core
PageOfficeNetCore.PageOfficeCtrl POCtrl = new PageOfficeNetCore.PageOfficeCtrl(Request);
PageOfficeNetCore.WordWriter.WordDocument doc = new PageOfficeNetCore.WordWriter.WordDocument();
PageOfficeNetCore.WordWriter.DataRegion dr = wordDoc.CreateDataRegion("PO_table1", PageOfficeNetCore.WordWriter.DataRegionInsertType.After, "[END]");
PageOfficeNetCore.WordWriter.Table table1 = dr.CreateTable(3, 5, PageOfficeNetCore.WordWriter.WdAutoFitBehavior.wdAutoFitWindow);
for (int i = 1; i < 4; i++)
{
    table1.OpenCellRC(i, 1).Value = "AA" + i.ToString();
    table1.OpenCellRC(i, 2).Value = "BB" + i.ToString();
    table1.OpenCellRC(i, 3).Value = "CC" + i.ToString();
    table1.OpenCellRC(i, 4).Value = "DD" + i.ToString();
    table1.OpenCellRC(i, 5).Value = "DD" + i.ToString();
}
POCtrl.SetWriter(doc);
//打开Word文档
POCtrl.WebOpen("D:\\template1.docx", PageOfficeNetCore.OpenModeType.docNormalEdit, "tom");

# 前端代码

本示例无前端关键代码。

标签:table1,word,表格,PageOfficeNetCore,WordWriter,pageoffice,PO
From: https://www.cnblogs.com/lhl77/p/18143337

相关文章

  • Python Flask+Pandas读取excel显示到html网页: CSS控制表格样式、表头文字居中
    前言全局说明CSS控制表格样式一、安装flask模块二、引用模块三、启动服务模块安装、引用模块、启动Web服务方法,参考下面链接文章:https://www.cnblogs.com/wutou/p/17963563Pandas安装https://www.cnblogs.com/wutou/p/17811839.htmlPandas官方API说明https://pand......
  • vue页面表格组件高度控制
    //浏览器窗口内部高度console.log("window.innerHeight",window.innerHeight);console.log("document.clientHeight",document.documentElement.clientHeight);console.log("body.clientHeight",document.body.clientHeight);//获取vue组件元素的高度console.l......
  • element的表格页面宽度变化问题 (防抖函数)
      //表格问题(防抖函数) constdebounce=(fn,delay)=>{ lettimer=null; returnfunction(){ letcontext=this; letargs=arguments; clearTimeout(timer); timer=setTimeout(function(){ fn.apply(context,args); },delay); } } const_R......
  • 表格
    表格三线表(见符号说明里)普通表格CreateLaTeXtablesonline–TablesGenerator.comExcel转换为LaTeX表格-在线表格转换工具(tableconvert.com)\begin{table}[H]%h此处,t页顶,b页底,p独立一页,浮动体出现的位置 \label{table3} \renewcommand{\arraystretch}{1......
  • Python Flask+Pandas读取excel显示到html网页: CSS控制表格样式
    前言全局说明CSS控制表格样式一、安装flask模块二、引用模块三、启动服务模块安装、引用模块、启动Web服务方法,参考下面链接文章:https://www.cnblogs.com/wutou/p/17963563修改内容后,要重启flask服务,修改才能生效四、CSS控制表格样式4.1.2文件名:index.pyfrom......
  • web表格导出插件-bootstrap-table-export
    web表格导出插件-bootstrap-table-export<html><linkhref="https://unpkg.com/[email protected]/dist/bootstrap-table.min.css"rel="stylesheet"><linkrel="stylesheet"href="https://maxcdn.bootstrapcdn.com/boo......
  • Python Flask+Pandas读取excel显示到html网页:CSS控制表格样式
    前言全局说明一、安装flask模块二、引用模块三、启动服务模块安装、引用模块、启动Web服务方法,参考下面链接文章:https://www.cnblogs.com/wutou/p/17963563四、CSS控制表格样式4.1.2文件名:index.pyfromflaskimportFlaskapp=Flask(__name__)@app.route("/excel......
  • 获取layui表格(table)当前页的页码值和当前页的数据条数
    获取layui表格(table)当前页的页码值和当前页的数据条数在浏览器查看源码,获取当前页面的数据条数如下核心代码$(".layui-laypage-limits").find("option:selected").val()//分页数目$(".layui-laypage-skip").find("input").val()//当前页码值//转载请保留原创地址http:......
  • element表格自带sortable属性排序错乱问题
       参考:https://blog.csdn.net/qq_40004867/article/details/129835446?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-129835446-blog-126339196.235%5Ev43%5Epc_blog_bottom_relevance_base4&dept......
  • 表格单元格相同值合并
     //插件网址//http://excel.wj2015.com/_book/docs/%E5%BF%AB%E9%80%9F%E4%B8%8A%E6%89%8B.html//表格单元格相同值合并//使用://引用插件库 excel.js//varcolumsName=['ModuleCNamePar'];//需要合并的列名称//varcolumsIndex=[0];//需要合并的列索引值//objLayuiExpand......