Extrair texto do PowerPoint C#

Muitas vezes, você pode precisar extrair texto dos slides do PowerPoint para realizar a análise de texto. Por outro lado, você pode extrair e salvar o texto em um arquivo ou banco de dados para processamento posterior. De acordo com isso, este artigo aborda como extrair texto de apresentações do PowerPoint usando C#. Particularmente, você aprenderá como extrair texto de um slide específico ou de uma apresentação inteira.

API C# para extrair texto do PowerPoint PPTX

Para manipular apresentações em PowerPoint, o Aspose oferece Aspose.Slides for .NET. A referida API foi projetada para implementar recursos de automação do PowerPoint em aplicativos .NET. Ele também fornece algumas maneiras simples de extrair texto das apresentações PPTX. Você pode baixar a API ou instalá-la usando NuGet.

PM> Install-Package Aspose.Slides.NET

Extrair texto de um slide do PowerPoint em C#

A seguir estão as etapas para extrair texto de um slide em uma apresentação do PowerPoint.

O exemplo de código a seguir mostra como extrair texto de um slide do PowerPoint usando C#.

//Instanciar a classe PresentationEx que representa um arquivo PPTX
Presentation pptxPresentation = new Presentation("demo.pptx");

//Obter uma matriz de objetos TextFrameEx do primeiro slide
ITextFrame[] textFramesSlideOne = SlideUtil.GetAllTextBoxes(pptxPresentation.Slides[0]);

//Percorrer a matriz de TextFrames
for (int i = 0; i < textFramesSlideOne.Length; i++)
{
    //Percorrer os parágrafos no TextFrame atual
    foreach (Paragraph para in textFramesSlideOne[i].Paragraphs)
    {
        //Percorrer porções no parágrafo atual
        foreach (Portion port in para.Portions)
        {
            //Exibir texto na parte atual
            Console.WriteLine(port.Text);

            //Exibir a altura da fonte do texto
            Console.WriteLine(port.PortionFormat.FontHeight);

            //Exibir o nome da fonte do texto
            Console.WriteLine(port.PortionFormat.LatinFont.FontName);
        }
    }
}

Extrair texto da apresentação do PowerPoint em C#

Você também pode extrair texto de toda a apresentação do PowerPoint usando o Aspose.Slides para .NET. A seguir estão as etapas para realizar esta operação.

O exemplo de código a seguir mostra como extrair texto de uma apresentação do PowerPoint.

//Instanciar classe de apresentação que representa um arquivo PPTX
Presentation pptxPresentation = new Presentation("demo.pptx");

//Obtenha uma matriz de objetos ITextFrame de todos os slides no PPTX
ITextFrame[] textFramesPPTX = Aspose.Slides.Util.SlideUtil.GetAllTextFrames(pptxPresentation, true);

//Percorrer a matriz de TextFrames
for (int i = 0; i < textFramesPPTX.Length; i++)
{
	//Percorrer os parágrafos no ITextFrame atual
	foreach (IParagraph para in textFramesPPTX[i].Paragraphs)
	{
		//Percorrer porções no IParagraph atual
		foreach (IPortion port in para.Portions)
		{
			//Exibir texto na parte atual
			Console.WriteLine(port.Text);

			//Exibir a altura da fonte do texto
			Console.WriteLine(port.PortionFormat.FontHeight);

			//Exibir o nome da fonte do texto
			if (port.PortionFormat.LatinFont != null)
				Console.WriteLine(port.PortionFormat.LatinFont.FontName);
		}
	}
}

Obtenha uma licença de API gratuita

Caso queira experimentar a API sem limitações de avaliação, você pode obter uma licença temporária gratuita.

Conclusão

Neste artigo, você aprendeu como extrair texto de apresentações do PowerPoint. Particularmente, você viu como extrair texto de um slide específico ou de toda a apresentação usando C#. Você pode explorar mais sobre o Aspose.Slides para .NET usando documentação. Caso você tenha alguma dúvida ou confusão, informe-nos através do nosso fórum.

Veja também