C#提取PPT文本——提取SmartArt中的文本、批注中的文本

简介: 提取文本的情况在工作和学习中常会遇到,在前面的文章中,已经讲述了如何提取PPT中文本框里的文本,在本篇文章中,将介绍如何使用C#代码语言提取PPT文档中SmartArt和批注中的文本。同样的,程序里面需要使用到Spire.Presentation for .NET,在编写代码前,需先安装,并添引用dll文件到项目程序中。

提取文本的情况在工作和学习中常会遇到,在前面的文章中,已经讲述了如何提取PPT中文本框里的文本,在本篇文章中,将介绍如何使用C#代码语言提取PPT文档中SmartArt和批注中的文本。同样的,程序里面需要使用到Spire.Presentation for .NET,在编写代码前,需先安装,并添引用dll文件到项目程序中。

1.提取SmartArt中的文本

测试文件如下(在第二张幻灯片中插入了SmartArt图形,包含文本内容

【C#】

 1 using Spire.Presentation.Diagrams;
 2 using System.Drawing;
 3 using System.Text;
 4 using System.IO;
 5 using Spire.Presentation;
 6 
 7 namespace ExtractTextFromSmartArt_PPT
 8 {
 9     class Program
10     {
11         static void Main(string[] args)
12         {
13             //初始化一个Presentation类实例,并加载文档
14             Presentation ppt = new Presentation();
15             ppt.LoadFromFile(@"C:\Users\Administrator\Desktop\Sample.pptx");
16             //新建一个StringBuilder对象
17             StringBuilder st = new StringBuilder();
18             //遍历文档中的SmartArt图形
19             for (int i = 0; i < ppt.Slides.Count; i++)
20             {
21                 for (int j = 0; j < ppt.Slides[i].Shapes.Count; j++)
22                 {
23                     if (ppt.Slides[i].Shapes[j] is ISmartArt)
24                     {
25                         ISmartArt smartArt = ppt.Slides[i].Shapes[j] as ISmartArt;
26                         for (int k = 0; k < smartArt.Nodes.Count; k++)
27                         {
28                             st.Append(smartArt.Nodes[k].TextFrame.Text);
29                         }
30                     }
31                 }
32             }
33             //将文本写入TXT文档
34             File.WriteAllText("Result.txt", st.ToString());
35         }
36     }
37 }

提取的文本如下图所示:

 

2.提取批注中文本

测试文件如下(在第一张幻灯片中,插入了批注,包含文本内容

 

【C#】

 1 using System;
 2 using System.Text;
 3 using Spire.Presentation;
 4 using System.IO;
 5 
 6 namespace ExtractTextFromComment_PPT
 7 {
 8     class Program
 9     {
10         static void Main(string[] args)
11         {
12             //实例化一个Presentation类,并加载文档
13             Presentation ppt = new Presentation();
14             ppt.LoadFromFile(@"C:\Users\Administrator\Desktop\comment.pptx");
15             //创建一个StringBuilder对象
16             StringBuilder str = new StringBuilder();
17             //获取第一张幻灯片中的所有批注
18             Comment[] comments = ppt.Slides[0].Comments;
19             //遍历批注内容
20             for (int i = 0; i < comments.Length; i++)
21             {
22                 str.Append(comments[i].Text + "\r\n");
23             }
24             //将文本写入TXT文档
25             File.WriteAllText("TextFromComment.txt", str.ToString());
26         }
27     }
28 }

调试运行程序后,生成文档,如下:

 

以上方法是提取PPT SmartArt和批注中文本的实现方法,供参考,希望能对您有所帮助,感谢阅读!

 

(本文完)

目录
相关文章
|
4月前
|
C#
C#读取txt文本的行数
C#读取txt文本的行数
149 0
|
4月前
|
存储 API C#
C# 实现格式化文本导入到Excel
C# 实现格式化文本导入到Excel
|
4月前
|
存储 SQL 数据库
C# 将 Word 转文本存储到数据库并进行管理
C# 将 Word 转文本存储到数据库并进行管理
112 2
|
4月前
|
存储 SQL 数据库
C# 将 Word 转文本存储到数据库并进行管理
C# 将 Word 转文本存储到数据库并进行管理
|
4月前
|
存储 C# C++
C# 笔记2 - 数组、集合与与文本文件处理
C# 笔记2 - 数组、集合与与文本文件处理
70 0
|
10月前
|
开发框架 自然语言处理 文字识别
一款C#开发的窗口文本提取开源软件
一款C#开发的窗口文本提取开源软件
73 2
|
C#
c#——将错误日志记录在txt文本里
c#——将错误日志记录在txt文本里
275 0
c#——将错误日志记录在txt文本里
|
存储 C# 数据安全/隐私保护
C#编程-48:文本控件复习笔记_
C#编程-48:文本控件复习笔记_
C#编程-35:写入读取文本文件
C#编程-35:写入读取文本文件
107 0
|
C# Windows
☀️ 学会编程入门必备 C# 最基础知识介绍—— C# 高级文件操作(文本文件的读写、二进制文件的读写、Windows 文件系统的操作)
前言🙏 C# 文本文件的读写👇 StreamWriter 类 C# 二进制文件的读写👏 BinaryReader 类 BinaryWriter 类 C# Windows 文件系统的操作👋 DirectoryInfo 类 FileInfo 类
☀️ 学会编程入门必备 C# 最基础知识介绍—— C# 高级文件操作(文本文件的读写、二进制文件的读写、Windows 文件系统的操作)
下一篇
DDNS