Modifier la présentation PPT/PPTX à l'aide de l'API .NET

Les formats de fichiers de présentation les plus courants et les plus utilisés sont PPT, PPTX et ODP. Les célèbres Microsoft PowerPoint, OpenOffice Impress et Apple Keynote prennent en charge ces formats et nous utilisons généralement ces formats pour réaliser des présentations spectaculaires. En tant que développeur, nous pouvons éditer des présentations dans nos applications par programmation. Dans cet article, nous verrons comment modifier des présentations PPT/PPTX en C# à l’aide de l’API .NET pour l’édition de présentations.

Voici les sujets abordés brièvement dans cet article :

API .NET pour l’édition et l’automatisation des présentations

Maintenant, nous utiliserons le GroupDocs.Editor for .NET dans les exemples C# ci-dessous. Il s’agit de l’API d’édition de présentations qui permet aux développeurs de charger, modifier et enregistrer les présentations modifiées dans d’autres formats tels que PPT, PPTX, PDF. En plus des formats de présentation, l’API prend en charge l’édition de documents de traitement de texte, de feuilles de calcul, aux formats HTML, XML, JSON, TXT, TSV et CSV.

Téléchargez les DLL ou le programme d’installation MSI à partir de la section téléchargements ou installez l’API dans votre application .NET via NuGet.

PM> Install-Package GroupDocs.Editor

Modifier les présentations PPTX/PPTX en C#

Juste après avoir configuré l’API, vous pouvez rapidement passer à l’édition de vos diapositives de présentation. Les étapes suivantes vous permettront de modifier la présentation des PPT/PPTX et d’autres formats pris en charge.

  • Chargez la présentation.
  • Modifiez en utilisant les options disponibles.
  • Enregistrez la présentation modifiée.

Charger la présentation PPT/PPTX

Tout d’abord, chargez la présentation en fournissant le chemin du fichier de présentation et le mot de passe, si la présentation est protégée.

// Load Presentation
using (FileStream fs = File.OpenRead("path/presentation.pptx"))
{
    // Load Presentation
    Options.PresentationLoadOptions loadOptions = new PresentationLoadOptions();
    loadOptions.Password = "P@$$w0Rd";
}

Modifier les diapositives de présentation PPT/PPTX

Après le chargement, vous pouvez modifier la présentation chargée selon les besoins. Ici, je remplace toutes les occurrences du mot « documents » par « présentation » dans une présentation PPTX en utilisant le code C# ci-dessous.

// Edit Presentation
using (Editor editor = new Editor(delegate { return fs; }, delegate { return loadOptions; }))
{
    Options.PresentationEditOptions editOptions = new PresentationEditOptions();
    editOptions.SlideNumber = 0;            // 1st slide
    editOptions.ShowHiddenSlides = true;

    using (EditableDocument beforeEdit = editor.Edit(editOptions))
    {
        string originalContent = beforeEdit.GetContent();
        List<IHtmlResource> allResources = beforeEdit.AllResources;
        string editedContent = originalContent.Replace("documents", "presentation");       
    }
}

Enregistrez la présentation PowerPoint modifiée avec les options

Enfin, lors de l’enregistrement du contenu de la présentation modifiée, vous pouvez définir diverses options. Ces options incluent : définir le mot de passe, les paramètres du format de sortie. J’ai défini les options ci-dessus dans le code mentionné ci-dessous et j’ai enregistré la présentation modifiée en tant que fichier PPTX protégé par mot de passe.

// Save Presentation
using (EditableDocument afterEdit = EditableDocument.FromMarkup(editedContent, allResources))
{
    Options.PresentationSaveOptions saveOptions = new PresentationSaveOptions(PresentationFormats.Pptm);
    saveOptions.Password = "new_pa$$word";

    using (FileStream outputStream = File.Create("path/edited-presentation.pptx"))
    {
        editor.Save(afterEdit, outputStream, saveOptions);
    }
}

Code complet

Pour plus de commodité, voici l’exemple C# complet expliqué ci-dessus qui modifie la présentation PowerPoint puis l’enregistre au format PPTX.

// Modifiez les présentations PPT/PPTX en C# à l'aide de l'API d'édition et d'automatisation de présentations GroupDocs
using (FileStream fs = File.OpenRead("path/presentation.pptx"))
{
    // Charger la présentation
    Options.PresentationLoadOptions loadOptions = new PresentationLoadOptions();
    loadOptions.Password = "P@$$w0Rd";

    // Modifier la présentation
    using (Editor editor = new Editor(delegate { return fs; }, delegate { return loadOptions; }))
    {
        Options.PresentationEditOptions editOptions = new PresentationEditOptions();
        editOptions.SlideNumber = 0;            // 1st slide
        editOptions.ShowHiddenSlides = true;

        using (EditableDocument beforeEdit = editor.Edit(editOptions))
        {
            string originalContent = beforeEdit.GetContent();
            List<IHtmlResource> allResources = beforeEdit.AllResources;
            string editedContent = originalContent.Replace("documents", "presentation");
            
            // Enregistrer la présentation
            using (EditableDocument afterEdit = EditableDocument.FromMarkup(editedContent, allResources))
            {
                Options.PresentationSaveOptions saveOptions = new PresentationSaveOptions(PresentationFormats.Pptm);
                saveOptions.Password = "new_pa$$word";

                using (FileStream outputStream = File.Create("path/edited-presentation.pptx"))
                {
                    editor.Save(afterEdit, outputStream, saveOptions);
                }
            }
        }
    }
}

Ce qui suit est la présentation de sortie dans laquelle toutes les occurrences sont remplacées à l’aide du code ci-dessus.

présentation pptx éditée à l'aide de l'API d'édition

Présentation de sortie - les occurrences de « documents » sont remplacées par « présentation »

Conclusion

Pour conclure, nous avons discuté de l’édition de diapositives de présentations en C# à l’aide de l’API d’édition de présentations pour les applications .NET. Vous pouvez utiliser l’API avec les éditeurs WYSIWYG pour l’édition visuelle de vos présentations. Après cela, vous pouvez créer votre propre éditeur de présentation. De même, vous pouvez également intégrer la fonctionnalité d’édition au sein de votre application .NET.

Pour plus de détails, d’options et d’exemples, vous pouvez visiter la documentation et le référentiel GitHub. Pour toute question complémentaire, contactez le support sur le forum.

Articles Liés