现代学习和办公当中,经常会接触到对表格的运用,像各种单据、报表、账户等等。在PPT演示文稿中同样不可避免的应用到各种数据表格。对于在PPT中插入表格,我发现了一个新方法,不过我用到了一款免费的.NET组件——Free Spire.Presentation,在C#中添加该产品DLL文件,可以简单快速地实现对演示文稿的表格插入、编辑和删除等操作。有需要的话可以在下面的网址下载:https://www.e-iceblue.cn/Downloads/Free-Spire-Presentation-NET.html

1.插入表格

步骤一:创建一个PowerPoint文档

Presentation ppt = new Presentation();
ppt.SlideSize.Type = SlideSizeType.Screen16x9;

步骤二:初始化一个ITable实例,并指定位置、行数和列数、行高和列宽

double[] widths = new double[] { , , , ,  };
double[] heights = new double[] { , , , , };
ITable table = ppt.Slides[].Shapes.AppendTable(, , widths, heights);

步骤三:为表格设置内置格式

table.StylePreset = TableStylePreset.LightStyle1Accent2;

步骤四:声明并初始化一个String[,]数组

string[,] data = new string[,]
{
{"排名","姓名","销售额","回款额","工号"},
{"","李彪","","",""},
{"","李娜","","",""},
{"","张丽","","",""},
{"","黄艳","","",""},
};

步骤六:保存文档

ppt.SaveToFile("创建表格.pptx", FileFormat.Pptx2010);

完成操作后得到以下PPT文档效果

2.删除表格行与列

步骤一:初始化一个Presentation实例并加载一个PowerPoint文档

Presentation ppt = new Presentation();
ppt.LoadFromFile(@"C:\Users\Administrator\Desktop\创建表格.pptx");

步骤二:获取第一张幻灯片上的表格

for (int i = ; i < ; i++)
{
for (int j = ; j < ; j++)
{
table[j, i].TextFrame.Text = data[i, j];
table[j, i].TextFrame.Paragraphs[].TextRanges[].LatinFont = new TextFont("Arial");
}
}

步骤三:删除第四列及第四行

table.ColumnsList.RemoveAt(, false);
table.TableRows.RemoveAt(, false);

步骤四:保存文档

ppt.SaveToFile("删除行与列.pptx", FileFormat.Pptx2010);

3.删除表格

步骤一:初始化一个Presentation实例并加载一个PowerPoint文档

Presentation ppt = new Presentation();
ppt.LoadFromFile(@"C:\Users\Administrator\Desktop\创建表格.pptx");

步骤二:初始化一个List对象,元素类型为IShape

List<IShape> tableShapes = new List<IShape>();

步骤三:获取第一张幻灯片上所有的表格图形并添加到List

for (int i = ; i < ; i++)
{
for (int j = ; j < ; j++)
{
table[j, i].TextFrame.Text = data[i, j];
table[j, i].TextFrame.Paragraphs[].TextRanges[].LatinFont = new TextFont("Arial");
}
}

步骤四:从幻灯片删除第一个表格图形

ppt.Slides[].Shapes.Remove(tableShapes[]);

步骤五:保存文档

ppt.SaveToFile("删除表格.pptx", FileFormat.Pptx2010);

以上是本人使用Free Spire.Presentation这款组件对PPT文档中表格的一些操作,希望能提供帮助,感谢阅读!

C# 实现对PPT插入、编辑、删除表格的更多相关文章

  1. C# 实现对PPT编辑

    C# Presentation 文本替换 我们可以通过插入占位符的方式,使用新的字词替换已有幻灯片里的文字. 本文将详细描述如何使用Spire.Presentation 来替换Prsentation ...

  2. 在jQuery EasyUI中实现对DataGrid进行编辑

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  3. C# 实现对PPT文档加密、解密以及重置密码的操作

    工作中我们会使用到各种各样的文档,其中,PPT起着不可或缺的作用.一份PPT文档里可能包含重要商业计划.企业运营资料或者公司管理资料等.因此,在竞争环境里,企业重要资料的保密工作就显得尤为重要,而对于 ...

  4. ListView 分页 排序、编辑、插入和删除

    摘自网络地址:http://msdn.microsoft.com/zh-cn/magazine/cc337984.aspx ListView 基础 ListView 是模板驱动的控件,这意味着它默认情 ...

  5. 编辑 Ext 表格(一)——— 动态添加删除行列

    一.动态增删行 在 ext 表格中,动态添加行主要和表格绑定的 store 有关, 通过对 store 数据集进行添加或删除,就能实现表格行的动态添加删除.   (1) 动态添加表格的行  gridS ...

  6. UITableView的编辑(插入、删除、移动)

    先说两个方法beginUpdates和endUpdates,几点注意事项: 一般我们把行.块的插入.删除.移动写在由这两个方法组成的函数块中.如果你不是在这两个函数组成的块中调用插入.删除.移动方法, ...

  7. C# 操作Word文本框——插入表格/读取表格/删除表格

    在文本框中,我们可以操作很多元素,如文本.图片.表格等,在本篇文章中将着重介绍如何插入表格到文本框,插入的表格我们可以对表格进行格式化操作来丰富表格内容.此外,对于文本框中的表格内容,我们也可以根据需 ...

  8. C# - VS2019 通过DataGridView实现对Oracle数据表的增删改查

    前言 通过VS2019建立WinFrm应用程序,搭建桌面程序后,通过封装数据库操作OracleHelper类和业务逻辑操作OracleSQL类,进而通过DataGridView实现对Oracle数据表 ...

  9. ASP.NET前台html页面对table数据的编辑删除

    摘要:本来说这个企业的门户网站单纯的做做显示公司文化信息的,做好了老板说要新增在线办理业务,本来这个网站是基于别人的框架做的前台都只能用纯html来做.好吧上两篇我就写了table里面向数据库插入数据 ...

随机推荐

  1. git mvn 使用

    git 更换远程仓库地址: stps:先删除远程仓库地址,然后再添加 [git remote rm origin] 删除现有远程仓库 [git remote add origin url]添加新远程仓 ...

  2. ES6新增对象方法的访问描述符:get(只读)、set(只写)

    Es6新增对象方法的访问描述符:get(只读).set(只写),可以直接使用,一般用于数据监听,用途类似于vue.$watch. var obj = { a:1, get bar() { return ...

  3. Fragment中TabLayout加FragmentViewPager

    让tablayout中的Tab平铺:在tablayout布局中写: app:tabMaxWidth="0dp"app:tabGravity="fill"app: ...

  4. Java作业六(2017-10-30)

    /*游戏引擎包,播放音乐*/ import com.rupeng.game.GameCore; public class Mc implements Runnable{ public static v ...

  5. phpcms2008远程代码执行漏洞

    phpcms2008远程代码执行漏洞 描述: 近日,互联网爆出PHPCMS2008代码注入漏洞(CVE-2018-19127).攻击者利用该漏洞,可在未授权的情况下实现对网站文件的写入.该漏洞危害程度 ...

  6. Shiro在SSM框架中的应用

    上一篇Shiro基础的连接 如果想使用Relam的操作,那么必须要保证有一个具体的认证类实现了Relam接口 web.xml增加shiro的配置 <!-- 进行shiro的过滤器的配置 --&g ...

  7. JAVA基础—线程池

    推荐文章java多线程基础 线程池概述 为什么要使用线程池 1.服务器创建和销毁工作线程的开销很大 2.如果频繁的创建和销毁线程会导致频繁的切换线程,因为一个线程被销毁后,必然要把CPU转让给另一个已 ...

  8. [SQL]LeetCode175. 组合两个表 | Combine Two Tables

    Table: Person +-------------+---------+ | Column Name | Type | +-------------+---------+ | PersonId ...

  9. [Swift]LeetCode351. 安卓解锁模式 $ Android Unlock Patterns

    Given an Android 3x3 key lock screen and two integers m and n, where 1 ≤ m ≤ n ≤ 9, count the total ...

  10. [Swift]LeetCode875. 爱吃香蕉的珂珂 | Koko Eating Bananas

    Koko loves to eat bananas.  There are N piles of bananas, the i-th pile has piles[i]bananas.  The gu ...