C# 实现对PPT插入、编辑、删除表格
现代学习和办公当中,经常会接触到对表格的运用,像各种单据、报表、账户等等。在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插入、编辑、删除表格的更多相关文章
- C# 实现对PPT编辑
C# Presentation 文本替换 我们可以通过插入占位符的方式,使用新的字词替换已有幻灯片里的文字. 本文将详细描述如何使用Spire.Presentation 来替换Prsentation ...
- 在jQuery EasyUI中实现对DataGrid进行编辑
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- C# 实现对PPT文档加密、解密以及重置密码的操作
工作中我们会使用到各种各样的文档,其中,PPT起着不可或缺的作用.一份PPT文档里可能包含重要商业计划.企业运营资料或者公司管理资料等.因此,在竞争环境里,企业重要资料的保密工作就显得尤为重要,而对于 ...
- ListView 分页 排序、编辑、插入和删除
摘自网络地址:http://msdn.microsoft.com/zh-cn/magazine/cc337984.aspx ListView 基础 ListView 是模板驱动的控件,这意味着它默认情 ...
- 编辑 Ext 表格(一)——— 动态添加删除行列
一.动态增删行 在 ext 表格中,动态添加行主要和表格绑定的 store 有关, 通过对 store 数据集进行添加或删除,就能实现表格行的动态添加删除. (1) 动态添加表格的行 gridS ...
- UITableView的编辑(插入、删除、移动)
先说两个方法beginUpdates和endUpdates,几点注意事项: 一般我们把行.块的插入.删除.移动写在由这两个方法组成的函数块中.如果你不是在这两个函数组成的块中调用插入.删除.移动方法, ...
- C# 操作Word文本框——插入表格/读取表格/删除表格
在文本框中,我们可以操作很多元素,如文本.图片.表格等,在本篇文章中将着重介绍如何插入表格到文本框,插入的表格我们可以对表格进行格式化操作来丰富表格内容.此外,对于文本框中的表格内容,我们也可以根据需 ...
- C# - VS2019 通过DataGridView实现对Oracle数据表的增删改查
前言 通过VS2019建立WinFrm应用程序,搭建桌面程序后,通过封装数据库操作OracleHelper类和业务逻辑操作OracleSQL类,进而通过DataGridView实现对Oracle数据表 ...
- ASP.NET前台html页面对table数据的编辑删除
摘要:本来说这个企业的门户网站单纯的做做显示公司文化信息的,做好了老板说要新增在线办理业务,本来这个网站是基于别人的框架做的前台都只能用纯html来做.好吧上两篇我就写了table里面向数据库插入数据 ...
随机推荐
- git mvn 使用
git 更换远程仓库地址: stps:先删除远程仓库地址,然后再添加 [git remote rm origin] 删除现有远程仓库 [git remote add origin url]添加新远程仓 ...
- ES6新增对象方法的访问描述符:get(只读)、set(只写)
Es6新增对象方法的访问描述符:get(只读).set(只写),可以直接使用,一般用于数据监听,用途类似于vue.$watch. var obj = { a:1, get bar() { return ...
- Fragment中TabLayout加FragmentViewPager
让tablayout中的Tab平铺:在tablayout布局中写: app:tabMaxWidth="0dp"app:tabGravity="fill"app: ...
- Java作业六(2017-10-30)
/*游戏引擎包,播放音乐*/ import com.rupeng.game.GameCore; public class Mc implements Runnable{ public static v ...
- phpcms2008远程代码执行漏洞
phpcms2008远程代码执行漏洞 描述: 近日,互联网爆出PHPCMS2008代码注入漏洞(CVE-2018-19127).攻击者利用该漏洞,可在未授权的情况下实现对网站文件的写入.该漏洞危害程度 ...
- Shiro在SSM框架中的应用
上一篇Shiro基础的连接 如果想使用Relam的操作,那么必须要保证有一个具体的认证类实现了Relam接口 web.xml增加shiro的配置 <!-- 进行shiro的过滤器的配置 --&g ...
- JAVA基础—线程池
推荐文章java多线程基础 线程池概述 为什么要使用线程池 1.服务器创建和销毁工作线程的开销很大 2.如果频繁的创建和销毁线程会导致频繁的切换线程,因为一个线程被销毁后,必然要把CPU转让给另一个已 ...
- [SQL]LeetCode175. 组合两个表 | Combine Two Tables
Table: Person +-------------+---------+ | Column Name | Type | +-------------+---------+ | PersonId ...
- [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 ...
- [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 ...