poi 操作 PPT,针对 PPTX–表格简单操作

一些对于 PPT 内表格的简单操作

文章目录

  • poi 操作 PPT,针对 PPTX--表格简单操作
    • 1、对模板 ppt 内的表格进行操作
    • 2、场景应用

1、对模板 ppt 内的表格进行操作

对下面幻灯片中表格的表格进行操作,对第三行中各单元格进行不同的操作

幻灯片修改前

代码


@Test
public void testDemo10() {PPTUtil pptUtil = new PPTUtil(filePath);XSLFTable table = pptUtil.getTableFromSlide(pptUtil.getSlides().get(1));    // 从指定的幻灯片中获取表格元素XSLFTableRow tableRow = pptUtil.getTableRows(table).get(2); // 获取第三行pptUtil.setCellColor(tableRow.getCells().get(0), "#ff0000");    // 字体颜色pptUtil.setCellFontfamily(tableRow.getCells().get(1), "宋体");    // 字体pptUtil.setCellFontWesternFontfamily(tableRow.getCells().get(1), "宋体"); // 西文字体pptUtil.setCellFontSize(tableRow.getCells().get(2), "18");  // 字体大小pptUtil.setCellFillColor(tableRow.getCells().get(3), "#ff0000");    // 单元格填充颜色pptUtil.setCellBold(tableRow.getCells().get(4), true);  // 单元格文本是否加粗pptUtil.setCellStrike(tableRow.getCells().get(5), true);    // 单元格文本是否加删除线pptUtil.setCellItalic(tableRow.getCells().get(6), true);    // 单元格文本是否斜体pptUtil.setCellUnderline(tableRow.getCells().get(7), true); // 单元格文本是否加下划线pptUtil.setCellHorizontalAlign(tableRow.getCells().get(8), "left"); // 单元格水平对齐方式pptUtil.setCellVerticalAlign(tableRow.getCells().get(9), "top");    // 单元格垂直对齐方式// 在最后 一个单元格中添加一个段落XSLFTextParagraph textParagraph = pptUtil.addCellParagraph(tableRow.getCells().get(10));   // 对新添加的段落添加文字pptUtil.addParagraphText(textParagraph, true, "9999");// 保存设置后的内容pptUtil.writePPT(exportPath);
}

修改后的幻灯片

2、场景应用

(给幻灯片表格中第4行数据值最大两个单元格进行填充)

提供以下幻灯片

代码


@Test
public void testDemo11() {// 读取 pptPPTUtil pptUtil = new PPTUtil(filePath);XSLFTable table = pptUtil.getTableFromSlide(pptUtil.getSlides().get(2));    // 获取第三页幻灯片XSLFTableRow tableRow = pptUtil.getTableRows(table).get(2); // 获取第List<XSLFTableCell> tableCols = pptUtil.getTableColsByRow(table, 2, 1); // 获取表格中第2行从第1列开始到最后一列的单元格列表List<Map<String, Object>> maps = new ArrayList<Map<String, Object>>();  // 将单元格封装为 mapList,cell 的对应的值为单元格对象,text 对应的值是数值for (XSLFTableCell tableCol : tableCols) {Map<String, Object> tempMap = new HashMap<String, Object>();tempMap.put("cell", tableCol);tempMap.put("text", tableCol.getText().replace("%", ""));maps.add(tempMap);}// 获取封装好的 mapList 中 text 最大的 2 个值的新的 mapListList<Map<String, Object>> maxValueList = SupportUtil.getMaxValueList(maps, "text", 2);// 对获取到的最大值的新 mapList 中获取单元格,并对单元格填充红色for (Map<String, Object> map : maxValueList) {pptUtil.setCellFillColor((XSLFTableCell) map.get("cell"), "#ff0000");}pptUtil.writePPT(exportPath);
}

设置后的幻灯片

同样的,我还添加了一下如下方法

1、getMinValueList(List<Map<String, Object>> sourMaps, String keyWord, int num):获取 maps 中根据 keyWord 所对应的值的最小的 map 列表
2、getGtValList(List<Map<String, Object>> sourMaps, String keyWord, String value, Boolean isEqual):获取 maps 中根据 keyWord 所对应的值的大于(大于等于)value 值的 map 列表(isEqual 用于指定是否等于)
3、getLtValList(List<Map<String, Object>> sourMaps, String keyWord, String value, Boolean isEqual):获取 maps 中根据 keyWord 所对应的值的小于(小于等于)value 值的 map 列表(isEqual 用于指定是否等于)
4、getEqValList(List<Map<String, Object>> sourMaps, String keyWord, String value):获取 maps 中根据 keyWord 所对应的值的等于 value 值的 map 列表

注: 本博客代码只为学习交流分享

PPTUtil 工具地址:https://gitee.com/livekeys/officetool.git
(PPTUtil 持续更新),代码有问题的地方一起交流。

poi 操作 PPT,针对 PPTX--表格简单操作相关推荐

  1. POI之PPT中生成表格简单实例

    开心一笑 昨晚被一道神题考住了! ( )( ) ( )2 4 6 7 8 让我填空-我按照数列组合算了一下午都不对 最后, 答案是这样的 (门前大桥下)(游过一群鸭) (快来快来数一数) 2 4 6 ...

  2. php数值操作,php数值计算num类简单操作示例

    php数值计算num类简单操作示例,在线,计算器,小数,整数,程序设计 php数值计算num类简单操作示例 易采站长站,站长之家为您整理了php数值计算num类简单操作示例的相关内容. 本文实例讲述了 ...

  3. 用poi把ppt或pptx转为图片

    代码主要参考官网:http://poi.apache.org/slideshow/how-to-shapes.html 需要jar下载地址:http://download.csdn.net/detai ...

  4. POI和 EasyExcel对Excel的简单操作

    目录 POI 结构 应用 Excel excel2003版和excel2007版的区别 关于WorkBook POI的写入操作 1.HSSFWorkbook的写入操作 2.XSSFWorkbook的写 ...

  5. 针对Excel表格文件操作的编程实现

    由于有个项目要对excel文件处理,结果一时竟无法下手,便上网查询了这方面的知识.以下代码适用于c++. 一. 包含Excel文件操作类头文件 #include "CSpreadSheet. ...

  6. Python办公自动化 5.1 Python操作ppt:win32com 使用教程 操作复制ppt PowerPoint

    课程大纲 第二章 Python10分钟入门 [2.1]:PyCharm社区版配置Anaconda开发环境 [2.2]:Python基础知识及正则表达式入门 第三章 Python操作Excel [3.1 ...

  7. Java文件操作的基本概念和简单操作

                                       Java文件的基本操作知识点 提纲: 一:基本概念汇总:     1.学习文件操作的必要性:    2.文件操作的概念:    3 ...

  8. Python办公自动化 5.2 Python操作ppt:python-pptx 使用教程 操作ppt PowerPoint 添加文字 形状图表

    课程大纲 第二章 Python10分钟入门 [2.1]:PyCharm社区版配置Anaconda开发环境 [2.2]:Python基础知识及正则表达式入门 第三章 Python操作Excel [3.1 ...

  9. python的ppt报告_看完这篇Python操作PPT总结,从此使用Python玩转Office全家桶就没有压力了!...

    一.导读 大家好,今天依旧是Python办公自动化基础系列,在之前我们分别详细讲解了 今天本文将基于第三方库pptx,详细讲解如何使用Python操作Office全家桶最后一位--PPT. 二.安装 ...

  10. VTK:简单操作之GaussianRandomNumber

    VTK:简单操作之GaussianRandomNumber VTK:简单操作之GaussianRandomNumber 描述 代码 GaussianRandomNumber.cxx CMakeList ...

最新文章

  1. 从强制卸载Office到强制安装WPS
  2. GoldenGate的ADD SCHEMATRANDATA命令研究
  3. 程序员看不起事业单位员工:一年收入才4万?网友:40岁再比一比,究竟谁更牛逼!!
  4. 矩池云上缺少cusparse.h头文件解决方法
  5. 数据挖掘十大算法-决策树的实现
  6. android对象缓存,【Android教程】缓存对象中的顶点数组和数据索引
  7. 测试电脑电源是否正常的办法
  8. MathType与Office公式编辑器,谁更强?
  9. 英文文献翻译-----改进三维网格分析和分割的马尔可夫随机场
  10. c++学习笔记:黑客攻击系统-功能菜单
  11. 配置华为AP6050DN胖AP
  12. Android Studio 光标莫名其妙加粗后,与 insert 键相反的问题
  13. 小米笔记本12.5英寸装ubuntu后设置快捷键开启和关闭触摸板
  14. 如何用awk打印除第一列之外的所有列
  15. 16 tia 内容说明 安装包_系统分区空间不足的情况下如何安装TIA Portal和TIA Portal更新包?...
  16. NX设置从固态硬盘启动
  17. 企业搭建网站用哪种服务器
  18. wsappx关不掉_wsappx是什么_如何关闭_windows10系统
  19. C/C++语言实现 学生管理系统
  20. 手摸手带你认识https并实现https通信

热门文章

  1. rgmii clock delay
  2. FPGA 控制 RGMII 接口 PHY芯片基础
  3. Device Tree(五)移植DM9000,并挂载NFS
  4. Mac 常用的 20 款效率神器推荐
  5. C++超详细五子棋游戏(AI实现人机对弈+双人对弈+EasyX图形化界面+详细介绍)
  6. mac安装多个JDK版本
  7. 行业研究的结构化分析方法:【PEST分析】实战案例
  8. Windows图片查看器不见了注册表可以帮你修复
  9. 小技巧!Win10系统怎样恢复使用Win7中的照片查看器?非常简单!
  10. 阿里云配置 https