使用C#代码从PPT文件中提取文本的方法示例

 更新时间:2025年11月10日 09:21:18   作者:2501_93070778  
当你将包含大量媒体文件和图片的 PowerPoint 文档发送给他人进行文字校对时,可能会发现由于文件体积较大,传输速度非常慢,本文将介绍如何使用 Spire.Presentation for .NET 在 C# 和 VB.NET 中从 PowerPoint 演示文稿中提取文本,需要的朋友可以参考下

引言

当你将包含大量媒体文件和图片的 PowerPoint 文档发送给他人进行文字校对时,可能会发现由于文件体积较大,传输速度非常慢。在这种情况下,最好先将 PowerPoint 中的文字内容提取到 MS Word 或记事本中,然后只发送文本内容。除此之外,提取出的文字内容还可以用于归档或备份,以便日后参考。本文将介绍如何使用 Spire.Presentation for .NET 在 C# 和 VB.NET 中从 PowerPoint 演示文稿中提取文本。

安装 Spire.Presentation for .NET

首先,你需要在 .NET 项目中添加 Spire.Presentation for .NET 包中包含的 DLL 文件作为引用。这些 DLL 文件可以通过以下链接下载,或通过 NuGet 进行安装。

PM> Install-Package Spire.Presentation

在 C# 和 VB.NET 中从 PowerPoint 演示文稿中提取文本

为了便于共享或传递 PowerPoint 文档中的文字信息,有时需要执行文字提取操作。以下是从所有幻灯片中提取文本并将其保存为 TXT 文件的步骤:

  1. 初始化一个 Presentation 类的实例。
  2. 使用 Presentation.LoadFromFile() 方法加载一个示例 PowerPoint 文档。
  3. 创建一个 StringBuilder 实例。
  4. 遍历文档中的每一张幻灯片,然后遍历每张幻灯片中的所有形状。
  5. 判断形状是否属于 IAutoShape 类型。如果是,则遍历该形状中的所有段落,并通过 TextParagraph.Text 属性获取段落文本。
  6. 使用 StringBuilder.AppendLine() 方法将提取的文本追加到 StringBuilder 实例中。
  7. 创建一个新的 TXT 文件,并使用 File.WriteAllText() 方法将提取的文本写入文件。

使用Spire.Presentation for .NET提取文本的示例代码如下:

using Spire.Presentation;
using System.IO;
using System.Text;
namespace ExtractText
{
    class Program
    {
        static void Main(string[] args)
        {
            //初始化 Presentation 类的实例
            Presentation presentation = new Presentation();
 
            //加载示例 PowerPoint 文档
            presentation.LoadFromFile("Island.pptx");
            //加载示例 PowerPoint 文档
            StringBuilder sb = new StringBuilder();
 
            //遍历文档中的每一张幻灯片
            foreach (ISlide slide in presentation.Slides)
            {
                //遍历每张幻灯片中的每个形状
                foreach (IShape shape in slide.Shapes)
                {
                    //判断形状是否属于 IAutoShape 类型
                    if (shape is IAutoShape)
                    {
                        //遍历每个形状中的所有段落
                        foreach (TextParagraph tp in (shape as IAutoShape).TextFrame.Paragraphs)
                        {
                            //提取文本并保存到 StringBuilder 实例中
                            sb.AppendLine(tp.Text);
                        }
                    }
                }
            }
            //创建一个新的 txt 文件来保存提取的文本
            File.WriteAllText("ExtractText.txt", sb.ToString());
        }
    }
}

到此这篇关于使用C#代码从PPT文件中提取文本的方法示例的文章就介绍到这了,更多相关C#提取PPT文本内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C#实现飞行棋源码

    C#实现飞行棋源码

    这篇文章主要为大家详细介绍了C#实现飞行棋源码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-02-02
  • C#联合VisionPro实现TCP/IP通信详解

    C#联合VisionPro实现TCP/IP通信详解

    TCP/IP(传输控制协议/互联网协议)是一组用于在网络上进行通信的通信协议,本文主要为大家详细介绍了C#如何联合VisionPro实现TCP/IP通信,希望对大家有所帮助
    2024-02-02
  • C#中datatable序列化与反序列化实例分析

    C#中datatable序列化与反序列化实例分析

    这篇文章主要介绍了C#中datatable序列化与反序列化,是datatable的常用技巧,需要的朋友可以参考下
    2014-09-09
  • C#实现拼图小游戏

    C#实现拼图小游戏

    这篇文章主要为大家详细介绍了C#实现拼图小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-08-08
  • C#实现的封装CURD到SqlHelper类用法简单分析

    C#实现的封装CURD到SqlHelper类用法简单分析

    这篇文章主要介绍了C#实现的封装CURD到SqlHelper类用法,涉及数据库相关配置方法及SqlHelper类的简单使用技巧,代码中包含了较为详尽的注释便于理解,需要的朋友可以参考下
    2017-11-11
  • C#使用InstallerProjects打包桌面应用程序的完整步骤

    C#使用InstallerProjects打包桌面应用程序的完整步骤

    这篇文章主要给大家介绍了关于C#使用InstallerProjects打包桌面应用程序的完整步骤,文中通过示例代码介绍的非常详细,对大家学习或者使用C#具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-07-07
  • 利用WinForm实现上左右布局的方法详解

    利用WinForm实现上左右布局的方法详解

    现在90%的管理系统都是在用上左右这种布局方式,真可谓是经典永流传。本文将利用WinForm实现上左右布局这一布局效果,感兴趣的可以学习一下
    2022-09-09
  • WinForm实现关闭按钮不可用或隐藏的方法

    WinForm实现关闭按钮不可用或隐藏的方法

    这篇文章主要介绍了WinForm实现关闭按钮不可用或隐藏的方法,很实用的功能,需要的朋友可以参考下
    2014-08-08
  • c#得到本月有几周和这几周的起止时间示例代码

    c#得到本月有几周和这几周的起止时间示例代码

    本篇文章主要是对c#得到本月有几周和这几周的起止时间的示例代码进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2014-01-01
  • C# 利用Aspose.Words.dll将 Word 转成PDF

    C# 利用Aspose.Words.dll将 Word 转成PDF

    关于word转成pdf的方法网上有很多。大部分需要借助office 2007及以上版本的组件。安装配置起来比较麻烦。今天偶然得之“Aspose.Words.dll”可以实现
    2013-08-08

最新评论