本文將介紹通過Java編程在PPT操作表格的方法。包括添加表格到PPT幻燈片,並設置表格樣式、單元格對齊方式、單元格背景色、邊框樣式、字體、字號、合並單元格等;同時,通過加載已有表格的幻燈片也可以對表格實現添加、刪除行或列、設置表格邊框、行高/列寬等。
使用工具:Free Spire.Presentation for Java (免費版)
Jar文件獲取:
方法1:通過官網下載jar文件。下載文件並解壓,將lib文件夾下的Spire.Presentation.jar文件導入到Java程序。
方法2:通過maven倉庫安裝導入到程序。
Java代碼示例(供參考)
【示例1】添加表格
import com.spire.presentation.*; import java.awt.*; public class AddTable { public static void main(String[]args) throws Exception { //實例化一個Presentation對象 Presentation presentation = new Presentation(); //設置表格行數和列數、行高和列寬 Double[] widths = new Double[] { 100d, 100d, 100d, 100d,100d }; Double[] heights = new Double[] { 15d, 15d, 15d, 15d, 15d, 15d }; //添加一個表格 ITable table = presentation.getSlides().get(0).getShapes().appendTable((float)presentation.getSlideSize().getSize().getWidth() / 2 - 275, 90, widths, heights); //設置表格內置樣式 table.setStylePreset(TableStylePreset.LIGHT_STYLE_1_ACCENT_6); //聲明一個String數組 String[][] dataStr = new String[][] { {"班級", "姓名", "性別", "學號","總分"}, {"1班", "李龍飛", "男", "Y010956","658"}, {"1班", "阜南", "男", "Y011561","686"}, {"5班", "陳琳", "女", "Y011650","654"}, {"9班", "房芬", "女", "Y011258","638"}, {"13班", "張立", "男", "Y011328","645"} }; //向表格中填充數據 for (int i = 0; i < 6; i++) { for (int j = 0; j < 5; j++) { table.get(j, i).getTextFrame().setText(dataStr[i][j]); table.get(j, i).getTextFrame().getParagraphs().get(0).setAlignment(TextAlignmentType.CENTER); } } //合並單元格 table.mergeCells(table.get(0, 2), table.get(0,2 ), false); //設置表格邊框樣式 table.setTableBorder(TableBorderType.Inside_Horizontal, 1, Color.black); //保存文件 presentation.saveToFile("添加表格.pptx", FileFormat.PPTX_2013); } }
表格添加效果:
【示例2】編輯、修改幻燈片中已有的表格
import com.spire.presentation.*; import java.awt.*; public class ModifyTable { public static void main(String[]args) throws Exception { //加載測試文檔 Presentation ppt = new Presentation(); ppt.loadFromFile("test.pptx"); //獲取表格 ITable table = (ITable) ppt.getSlides().get(0).getShapes().get(0); //添加行和列(默認在表格最下方插入一行) table.getTableRows().append(table.getTableRows().get(0)); table.getColumnsList().add(table.getColumnsList().get(0)); //插入行或列(在指定位置插入一或多行/列) table.getTableRows().insert(0, table.getTableRows().get(1)); table.getColumnsList().insert(0, table.getColumnsList().get(1)); //設置行高、列寬 table.getTableRows().get(0).setHeight(50); table.getColumnsList().get(0).setWidth(100); //刪除指定行或列 table.getTableRows().removeAt(2, false); table.getColumnsList().removeAt(2, false); //設置表格邊框 table.setTableBorder(TableBorderType.All, 1, Color.black); //保存文檔 ppt.saveToFile("Modified.pptx",FileFormat.PPTX_2013); } }
完成代碼后,運行程序,可查看生成的文檔中的表格修改效果。
(本文完)