Extraire le texte de PowerPoint C#

Vous devrez souvent extraire du texte des diapositives PowerPoint afin d’effectuer une analyse de texte. D’autre part, vous souhaiterez peut-être extraire et enregistrer le texte dans un fichier ou une base de données pour un traitement ultérieur. Conformément à cela, cet article explique comment extraire du texte de présentations PowerPoint à l’aide de C#. En particulier, vous apprendrez à extraire du texte d’une diapositive spécifique ou d’une présentation entière.

API C# pour extraire du texte de PowerPoint PPTX

Afin de manipuler les présentations PowerPoint, Aspose propose Aspose.Slides for .NET. Ladite API est conçue pour implémenter les fonctionnalités d’automatisation de PowerPoint dans les applications .NET. Il fournit également des moyens simples d’extraire du texte des présentations PPTX. Vous pouvez soit télécharger l’API ou l’installer à l’aide de NuGet.

PM> Install-Package Aspose.Slides.NET

Extraire le texte d’une diapositive PowerPoint en C#

Voici les étapes pour extraire le texte d’une diapositive dans une présentation PowerPoint.

L’exemple de code suivant montre comment extraire du texte d’une diapositive PowerPoint à l’aide de C#.

//Créer une classe PresentationEx qui représente un fichier PPTX
Presentation pptxPresentation = new Presentation("demo.pptx");

//Obtenir un tableau d'objets TextFrameEx à partir de la première diapositive
ITextFrame[] textFramesSlideOne = SlideUtil.GetAllTextBoxes(pptxPresentation.Slides[0]);

//Boucle à travers le tableau de TextFrames
for (int i = 0; i < textFramesSlideOne.Length; i++)
{
    //Boucle à travers les paragraphes dans le TextFrame actuel
    foreach (Paragraph para in textFramesSlideOne[i].Paragraphs)
    {
        //Boucle sur des parties du paragraphe actuel
        foreach (Portion port in para.Portions)
        {
            //Afficher le texte dans la partie actuelle
            Console.WriteLine(port.Text);

            //Afficher la hauteur de la police du texte
            Console.WriteLine(port.PortionFormat.FontHeight);

            //Afficher le nom de la police du texte
            Console.WriteLine(port.PortionFormat.LatinFont.FontName);
        }
    }
}

Extraire le texte d’une présentation PowerPoint en C#

Vous pouvez également extraire le texte de l’ensemble de la présentation PowerPoint à l’aide d’Aspose.Slides for .NET. Voici les étapes pour effectuer cette opération.

L’exemple de code suivant montre comment extraire du texte d’une présentation PowerPoint.

//Instaciate Presentation classe qui représente un fichier PPTX
Presentation pptxPresentation = new Presentation("demo.pptx");

//Obtenez un tableau d'objets ITextFrame de toutes les diapositives du PPTX
ITextFrame[] textFramesPPTX = Aspose.Slides.Util.SlideUtil.GetAllTextFrames(pptxPresentation, true);

//Boucle à travers le tableau de TextFrames
for (int i = 0; i < textFramesPPTX.Length; i++)
{
	//Boucle à travers les paragraphes dans ITextFrame actuel
	foreach (IParagraph para in textFramesPPTX[i].Paragraphs)
	{
		//Boucle à travers des portions dans l'IParagraphe actuel
		foreach (IPortion port in para.Portions)
		{
			//Afficher le texte dans la partie actuelle
			Console.WriteLine(port.Text);

			//Afficher la hauteur de la police du texte
			Console.WriteLine(port.PortionFormat.FontHeight);

			//Afficher le nom de la police du texte
			if (port.PortionFormat.LatinFont != null)
				Console.WriteLine(port.PortionFormat.LatinFont.FontName);
		}
	}
}

Obtenez une licence API gratuite

Si vous souhaitez essayer l’API sans limitation d’évaluation, vous pouvez obtenir une licence temporaire gratuite.

Conclusion

Dans cet article, vous avez appris à extraire du texte de présentations PowerPoint. En particulier, vous avez vu comment extraire du texte d’une diapositive spécifique ou de toute la présentation à l’aide de C#. Vous pouvez en savoir plus sur Aspose.Slides for .NET en utilisant documentation. En cas de questions ou de confusion, informez-nous via notre forum.

Voir également