C# Rechercher et remplacer du texte dans PowerPoint

La recherche et le remplacement de texte sont souvent utilisés pour mettre à jour le contenu des présentations PowerPoint. Cependant, pour effectuer cette opération pour un lot de présentations, vous avez besoin d’une automatisation. Par conséquent, cet article explique comment rechercher et remplacer du texte dans PowerPoint PPTX/PPT par programmation à l’aide de C#.

API C# pour rechercher et remplacer du texte dans PowerPoint

Afin de rechercher et de remplacer du texte dans des présentations PowerPoint, nous utiliserons Aspose.Slides for .NET. Il s’agit d’une API riche en fonctionnalités conçue pour créer et manipuler des présentations PowerPoint à partir d’applications .NET. Vous pouvez soit télécharger l’API ou l’installer à l’aide de NuGet.

PM> Install-Package Aspose.Slides.NET

Rechercher et remplacer du texte dans PowerPoint PPTX à l’aide de C#

Voici les étapes pour rechercher et remplacer du texte dans une présentation PPTX à l’aide de C#.

  • Chargez la présentation PowerPoint à l’aide de la classe Presentation.
  • Parcourez chaque Diapositive de la présentation.
  • À chaque itération, récupérez les cadres de texte dans un tableau ITextFrame.
  • Parcourez le tableau de ITextFrame et à chaque itération, effectuez les opérations suivantes :
  • Enregistrez la présentation mise à jour à l’aide de la méthode Presentation.Save(string, SaveFormat).

L’exemple de code suivant montre comment rechercher et remplacer du texte dans une présentation PowerPoint.

// Charger la présentation
Presentation pres = new Presentation("mytextone.pptx");

string strToFind = "search string";
string strToReplaceWith = "replace string";

// Boucle à travers chaque diapositive
foreach (Slide slide in pres.Slides)
{
    // Obtenir tous les blocs de texte de la diapositive
    ITextFrame[] tf = SlideUtil.GetAllTextBoxes(slide);

    for (int i = 0; i < tf.Length; i++)

        foreach (Paragraph para in tf[i].Paragraphs)

            foreach (Portion port in para.Portions)

                // Rechercher le texte à remplacer
                if (port.Text.Contains(strToFind))
                {
                    // Remplacer le texte existant par le nouveau texte
                    string str = port.Text;
                    int idx = str.IndexOf(strToFind);
                    string strStartText = str.Substring(0, idx);
                    string strEndText = str.Substring(idx + strToFind.Length, str.Length - 1 - (idx + strToFind.Length - 1));
                    port.Text = strStartText + strToReplaceWith + strEndText;

                }
}

// Enregistrer la présentation
pres.Save("myTextOneAspose.pptx", SaveFormat.Pptx);

Obtenez une licence API gratuite

Vous pouvez utiliser Aspose.Slides for .NET sans limitation d’évaluation en demandant une licence temporaire.

Conclusion

La fonction de recherche et de remplacement de texte dans les présentations PowerPoint est utilisée dans divers scénarios. Afin d’automatiser cette opération, l’article a expliqué comment rechercher et remplacer du texte dans des présentations PowerPoint par programmation à l’aide de C#. Vous pouvez simplement installer l’API dans votre application et intégrer l’exemple de code fourni. De plus, vous pouvez visiter la documentation pour explorer d’autres fonctionnalités d’Aspose.Slides for .NET. N’hésitez pas non plus à nous faire part de vos questions via notre forum.

Voir également