从 PowerPoint C# 中提取文本

您可能经常需要从 PowerPoint 幻灯片中提取文本以执行文本分析。另一方面,您可能希望提取文本并将其保存在文件或数据库中以供进一步处理。据此,本文介绍了如何使用 C# 从 PowerPoint 演示文稿中提取文本。特别是,您将学习如何从特定幻灯片或整个演示文稿中提取文本。

C# API 从 PowerPoint PPTX 中提取文本

为了操作 PowerPoint 演示文稿,Aspose 提供了 Aspose.Slides for .NET。上述 API 旨在实现 .NET 应用程序中的 PowerPoint 自动化功能。它还提供了一些从 PPTX 演示文稿中提取文本的简单方法。您可以 下载 API 或使用 NuGet 安装它。

PM> Install-Package Aspose.Slides.NET

在 C# 中从 PowerPoint 幻灯片中提取文本

以下是从 PowerPoint 演示文稿中的幻灯片中提取文本的步骤。

以下代码示例演示如何使用 C# 从 PowerPoint 幻灯片中提取文本。

//实例化表示 PPTX 文件的 PresentationEx 类
Presentation pptxPresentation = new Presentation("demo.pptx");

//从第一张幻灯片中获取一组 TextFrameEx 对象
ITextFrame[] textFramesSlideOne = SlideUtil.GetAllTextBoxes(pptxPresentation.Slides[0]);

//循环遍历 TextFrames 数组
for (int i = 0; i < textFramesSlideOne.Length; i++)
{
    //循环浏览当前 TextFrame 中的段落
    foreach (Paragraph para in textFramesSlideOne[i].Paragraphs)
    {
        //循环遍历当前段落中的部分
        foreach (Portion port in para.Portions)
        {
            //在当前部分显示文本
            Console.WriteLine(port.Text);

            //显示文本的字体高度
            Console.WriteLine(port.PortionFormat.FontHeight);

            //显示文本的字体名称
            Console.WriteLine(port.PortionFormat.LatinFont.FontName);
        }
    }
}

用 C# 从 PowerPoint 演示文稿中提取文本

您还可以使用 Aspose.Slides for .NET 从整个 PowerPoint 演示文稿中提取文本。以下是执行此操作的步骤。

下面的代码示例演示如何从 PowerPoint 演示文稿中提取文本。

//实例化表示 PPTX 文件的 Presentation 类
Presentation pptxPresentation = new Presentation("demo.pptx");

//从 PPTX 中的所有幻灯片中获取一组 ITextFrame 对象
ITextFrame[] textFramesPPTX = Aspose.Slides.Util.SlideUtil.GetAllTextFrames(pptxPresentation, true);

//循环遍历 TextFrames 数组
for (int i = 0; i < textFramesPPTX.Length; i++)
{
	//循环遍历当前 ITextFrame 中的段落
	foreach (IParagraph para in textFramesPPTX[i].Paragraphs)
	{
		//循环遍历当前 IParagraph 中的部分
		foreach (IPortion port in para.Portions)
		{
			//在当前部分显示文本
			Console.WriteLine(port.Text);

			//显示文本的字体高度
			Console.WriteLine(port.PortionFormat.FontHeight);

			//显示文本的字体名称
			if (port.PortionFormat.LatinFont != null)
				Console.WriteLine(port.PortionFormat.LatinFont.FontName);
		}
	}
}

获取免费 API 许可证

如果您想在没有评估限制的情况下试用 API,您可以获得免费的临时许可证

结论

在本文中,您学习了如何从 PowerPoint 演示文稿中提取文本。特别是,您已经了解了如何使用 C# 从特定幻灯片或整个演示文稿中提取文本。您可以使用 documentation 探索更多关于 Aspose.Slides for .NET 的信息。如果您有任何疑问或困惑,请通过我们的 论坛 通知我们。

也可以看看