Convertir PowerPoint en PNG en C#

Aperçu

Cet article explique comment convertir une présentation PowerPoint au format PNG en utilisant C#. Il couvre les sujets suivants.

C# PowerPoint en PNG

Pour le code d’exemple C# afin de convertir PowerPoint en PNG, veuillez consulter la section ci-dessous c’est-à-dire Convertir PowerPoint en PNG. Le code peut charger un certain nombre de formats comme PPT, PPTX et ODP dans l’objet Presentation, puis enregistrer la miniature de sa diapositive au format PNG. Les autres conversions PowerPoint en image qui sont assez similaires comme JPG, BMP, TIFF et SVG sont discutées dans ces articles.

À propos de la conversion PowerPoint en PNG

Le format PNG (Portable Network Graphics) n’est pas aussi populaire que le JPEG (Joint Photographic Experts Group), mais il reste très populaire.

Cas d’utilisation : Lorsque vous avez une image complexe et que la taille n’est pas un problème, le PNG est un meilleur format d’image que le JPEG.

Convertir PowerPoint en PNG

Suivez ces étapes :

  1. Instancier la classe Presentation.
  2. Obtenez l’objet diapositive de la collection Presentation.Slides sous l’interface ISlide.
  3. Utilisez une méthode ISlide.GetImage pour obtenir la miniature de chaque diapositive.
  4. Utilisez la méthode IPresentation.Save(String, SaveFormat, ISaveOptions pour enregistrer la miniature de la diapositive au format PNG.

Ce code C# vous montre comment convertir une présentation PowerPoint en PNG. L’objet Presentation peut charger PPT, PPTX, ODP, etc., puis chaque diapositive de l’objet présentation est convertie en format PNG ou dans d’autres formats d’image.

using (Presentation pres = new Presentation("pres.pptx"))
{
    for (var index = 0; index < pres.Slides.Count; index++)
    {
        ISlide slide = pres.Slides[index];

        using (IImage image = slide.GetImage())
        {
            image.Save($"slide_{index}.png", ImageFormat.Png);
        }
    }
}

Convertir PowerPoint en PNG avec des dimensions personnalisées

Si vous souhaitez obtenir des fichiers PNG autour d’une certaine échelle, vous pouvez définir les valeurs pour desiredX et desiredY, qui déterminent les dimensions de la miniature résultante.

Ce code en C# démontre l’opération décrite :

using (Presentation pres = new Presentation("pres.pptx"))
{
    float scaleX = 2f;
    float scaleY = 2f;
    for (var index = 0; index < pres.Slides.Count; index++)
    {
        ISlide slide = pres.Slides[index];

        using (IImage image = slide.GetImage(scaleX, scaleY))
        {
            image.Save($"slide_{index}.png", ImageFormat.Png);
        }
    }
}

Convertir PowerPoint en PNG avec une taille personnalisée

Si vous souhaitez obtenir des fichiers PNG autour d’une certaine taille, vous pouvez passer vos arguments préférés width et height pour imageSize.

Ce code vous montre comment convertir un PowerPoint en PNG tout en spécifiant la taille pour les images :

using (Presentation pres = new Presentation("pres.pptx"))
{
    Size size = new Size(960, 720);
    for (var index = 0; index < pres.Slides.Count; index++)
    {
        ISlide slide = pres.Slides[index];

        using (IImage image = slide.GetImage(size))
        {
            image.Save($"slide_{index}.png", ImageFormat.Png);
        }
    }
}