OUTILS PDF

Comment utiliser C# pour convertir PowerPoint en image

Publié mars 12, 2024
Partager:

Introduction

La nécessité de se convertirPowerPoint les présentations de formats d'images sont fréquentes dans le domaine du développement de logiciels. De nombreux développeurs trouvent utile de pouvoir convertir par programme des fichiers PowerPoint en photos, que ce soit pour la génération d'aperçus, la création de vignettes ou l'intégration dans un système. Cet article explique comment réaliser cette opération avec C# ppt to image et inclut quelques exemples de code pour vous aider dans votre démarche.

Comment utiliser C# ; pour convertir PowerPoint en image

  1. Créer l'instance de l'application PowerPoint.

  2. Ouvrir la présentation en utilisant l'instance.

  3. Vérifier et créer un dossier de sortie.

  4. Itérer à travers les diapositives et exporter les diapositives vers des images.

  5. Fermez la présentation et quittez l'application.

Convertir une présentation PowerPoint en format image ?

Avant d'entrer dans le vif du sujet, examinons brièvement l'intérêt de convertir des diapositives PowerPoint en photos. Même si PowerPoint est un outil formidable pour réaliser des présentations dynamiques, il n'est pas toujours possible de partager ces fichiers dans leur format d'origine. Parfois, seules des diapositives particulières ou des photos extraites de la présentation sont nécessaires, et d'autres fois, différents systèmes et paramètres peuvent ne pas permettre le rendu direct des fichiers PowerPoint. La transformation des présentations PowerPoint en images offre une solution globale, simple à partager et à visualiser sur une variété d'appareils et d'applications.

Utilisation de la bibliothèque interop de PowerPoint

Il existe plusieurs méthodes pour transformer des présentations PowerPoint en photos en C#. L'utilisation de laMicrosoft.Office.Interop.PowerPoint qui propose des classes et des méthodes pour l'interface programmatique avec les applications PowerPoint, est une approche populaire. La traduction doit rester professionnelle, en préservant la précision technique tout en expliquant les caractéristiques et les avantages de ces outils de développement.

Créer un nouveau projet Visual Studio

Suivez les étapes ci-dessous pour créer un nouveau projet Visual Studio :

Ouvrez l'IDE Visual Studio. Assurez-vous d'avoir installéVisual Studio sur votre PC avant de l'utiliser.

Lancer un nouveau projet:

Choisissez Fichier, Nouveau, et enfin Projet.

Comment utiliser C# pour convertir PowerPoint en image : Figure 1 - Ouvrez Visual Studio et choisissez Fichier - Nouveau - Projet.

Dans la boîte "Créer un nouveau projet", sélectionnez votre langage de programmation préféré(C#, par exemple) du côté gauche.

Ensuite, sélectionnez l'"App console" ou l'"App console"(.NET Core)"dans la liste des modèles de projet disponibles.

Veuillez remplir la section "Nom" pour donner un nom à votre projet.

Comment utiliser C# pour convertir PowerPoint en image : Figure 2 - Dans la boîte Créer un nouveau projet, sélectionnez le langage de programmation C# et l'application Console. Configurez le nom et l'emplacement du projet, puis cliquez sur le bouton Suivant.

Sélectionnez l'emplacement de stockage du projet.

Cliquez sur "Créer" pour commencer à travailler sur un nouveau projet d'application Console.

Comment utiliser C# pour convertir PowerPoint en image : Figure 3 - Sélectionnez le .NET Framework approprié et cliquez sur le bouton Créer.

Convertir des diapositives PowerPoint en images en C# ;

Commençons par voir comment utiliser l'espace de noms Microsoft.Office.Interop.PowerPoint pour convertir des diapositives PowerPoint en images. Assurez-vous d'abord que les assemblages requis sont installés et ajoutés à votre projet C# en tant que références. Ces assemblages sont généralement trouvés en se référant directement aux assemblages InterOp ou en installant les Microsoft Office Primary Interop Assemblies(PIA).

Exemple de code

using System.IO;
using Microsoft.Office.Interop.PowerPoint;
class Program
{
    static void Main(string [] args)
    {
        string pptFilePath = "demo.pptx"; // Path to your PowerPoint file
        string outputFolder = "output_images"; // Output folder path where images will be saved
        ConvertPptToImages(pptFilePath, outputFolder);
    }
    static void ConvertPptToImages(string pptFilePath, string outputFolder)
    {
        Application pptApplication = new Application();
        Presentation pptPresentation = pptApplication.Presentations.Open(pptFilePath, MsoTriState.msoFalse, MsoTriState.msoFalse, MsoTriState.msoFalse);
        if (!Directory.Exists(outputFolder))
            Directory.CreateDirectory(outputFolder);
        int slidesCount = pptPresentation.Slides.Count;
        for (int i = 1; i <= slidesCount; i++)
        {
            string outputPath = Path.Combine(outputFolder, $"Slide{i}.png");
            pptPresentation.Slides[i].Export(outputPath, "png", 1024, 768);
        //saving the presentation slides into png images
        }
        pptPresentation.Close();
        pptApplication.Quit();
    }
}
using System.IO;
using Microsoft.Office.Interop.PowerPoint;
class Program
{
    static void Main(string [] args)
    {
        string pptFilePath = "demo.pptx"; // Path to your PowerPoint file
        string outputFolder = "output_images"; // Output folder path where images will be saved
        ConvertPptToImages(pptFilePath, outputFolder);
    }
    static void ConvertPptToImages(string pptFilePath, string outputFolder)
    {
        Application pptApplication = new Application();
        Presentation pptPresentation = pptApplication.Presentations.Open(pptFilePath, MsoTriState.msoFalse, MsoTriState.msoFalse, MsoTriState.msoFalse);
        if (!Directory.Exists(outputFolder))
            Directory.CreateDirectory(outputFolder);
        int slidesCount = pptPresentation.Slides.Count;
        for (int i = 1; i <= slidesCount; i++)
        {
            string outputPath = Path.Combine(outputFolder, $"Slide{i}.png");
            pptPresentation.Slides[i].Export(outputPath, "png", 1024, 768);
        //saving the presentation slides into png images
        }
        pptPresentation.Close();
        pptApplication.Quit();
    }
}
Imports System.IO
Imports Microsoft.Office.Interop.PowerPoint
Friend Class Program
	Shared Sub Main(ByVal args() As String)
		Dim pptFilePath As String = "demo.pptx" ' Path to your PowerPoint file
		Dim outputFolder As String = "output_images" ' Output folder path where images will be saved
		ConvertPptToImages(pptFilePath, outputFolder)
	End Sub
	Private Shared Sub ConvertPptToImages(ByVal pptFilePath As String, ByVal outputFolder As String)
		Dim pptApplication As New Application()
		Dim pptPresentation As Presentation = pptApplication.Presentations.Open(pptFilePath, MsoTriState.msoFalse, MsoTriState.msoFalse, MsoTriState.msoFalse)
		If Not Directory.Exists(outputFolder) Then
			Directory.CreateDirectory(outputFolder)
		End If
		Dim slidesCount As Integer = pptPresentation.Slides.Count
		For i As Integer = 1 To slidesCount
			Dim outputPath As String = Path.Combine(outputFolder, $"Slide{i}.png")
			pptPresentation.Slides(i).Export(outputPath, "png", 1024, 768)
		'saving the presentation slides into png images
		Next i
		pptPresentation.Close()
		pptApplication.Quit()
	End Sub
End Class
VB   C#

L'espace de noms C# nécessaire pour travailler avec les applications PowerPoint est importé en utilisant la déclaration Microsoft.Office.Interop.PowerPoint;. Le point d'entrée du programme est la méthode Main. Il désigne le dossier de sortie(outputFolder)qui est l'endroit où les photos créées seront conservées, et le chemin d'accès au fichier PowerPoint(pptFilePath). Cette méthode permet de transformer les présentations PowerPoint en photos.

Fichier de présentation PowerPoint

Comment utiliser C# pour convertir PowerPoint en image : Figure 4 - PowerPoint ppt utilisé pour l'exemple de code.

Application pptApplication = nouvelle Application(); est utilisé pour démarrer une nouvelle instance du programme PowerPoint. Cela permet une interaction programmatique avec PowerPoint. En utilisant pptApplication.Presentations, nous ouvrons le fichier de présentation PowerPoint indiqué par la commande pptFilePath.Open()fonction. Cette fonction renvoie un objet Presentation, qui représente la présentation ouverte. Nous déterminons si le dossier de sortie "outputFolder" est présent. Si ce n'est pas le cas, nous utilisons la méthodeDirectory.CreateDirectory()` pour le créer.

Sortie de la console

Comment utiliser C# pour convertir PowerPoint en image : Figure 5 - Sortie de la console.

Nous utilisons une boucle for pour parcourir chaque diapositive de la présentation. La pptPresentation fournit le nombre total de diapositives à l'aide de la propriété Slides.Count. Nous utilisons le chemin du dossier de sortie et l'index des diapositives pour créer le chemin de sortie de l'image de chaque diapositive(comme Slides{i}.png). Ensuite, nous utilisons pptPresentation pour exporter la diapositive PowerPoint sous forme d'image(dans cet exemple, au format JPG, PNG) à l'aide de la fonction Export() fonction. Les paramètres sont le format d'image("format "png) et la taille(largeur : 1024, hauteur : 768). Enfin, nous utilisons pptPresentation pour terminer la présentation. Fermer() et utilisez pptApplication pour terminer la session PowerPoint. Pour renoncer de manière appropriée aux ressources du système, utilisez Quit().

Sortie - Convertir un PowerPoint en images PNG

Comment utiliser C# pour convertir PowerPoint en image : Figure 6 - Diapositives PowerPoint exportées en images PNG.

IronXL

Un framework .NET bien connu appeléIronXL facilite la manipulation des fichiers Excel en C#. Grâce à ses nombreuses fonctionnalités de lecture, de création et d'édition de fichiers Excel, il s'agit d'un outil flexible qui convient à un large éventail d'utilisations. Je passerai en revue ci-dessous quelques-unes des principales caractéristiques d'IronXL :

  • Les développeurs peuvent rapidement écrire des données dans des fichiers Excel nouveaux ou existants et lire des données à partir de fichiers Excel existants à l'aide de la fonctionIronXL. Il s'agit d'accéder aux attributs des feuilles de calcul et des classeurs, tels que le formatage, les formules et les valeurs des cellules.
  • Avec IronXL, les développeurs peuvent importer dans des feuilles de calcul Excel des données provenant de diverses sources, notamment des bases de données et des fichiers CSV. De même, les informations contenues dans les fichiers Excel peuvent être exportées vers des formats CSV, HTML, XML et PDF, entre autres.
  • Les développeurs peuvent ajouter, modifier et supprimer dynamiquement des feuilles de calcul Excel à l'aide d'IronXL. Cela permet d'organiser et de structurer les données de manière flexible en fonction des besoins de l'application.
  • IronXL permet de manipuler avec précision des cellules individuelles dans les feuilles de calcul Excel. Par programmation, les développeurs peuvent définir la mise en forme, les styles, les formules, les valeurs des cellules et d'autres caractéristiques.

    Pour en savoir plus sur la documentation, reportez-vous à la sectionDocumentation IronXL.

Installer IronXL

Commençons par installer IronXL à l'aide de la console NuGet Package Manager avant d'aller plus loin :

Install-Package IronXL.Excel

Après l'installation, IronXL peut être utilisé dans notre projet C#.

Utilisation d'IronXL pour les opérations Excel

Examinons une situation hypothétique dans laquelle nous souhaitons utiliser IronXL pour lire les données d'un fichier Excel.

L'exemple de code suivant illustre rapidement la manière de procéder :

using IronXL;
using System;
class Program
{
    static void Main(string [] args)
    {
        // Path to the Excel file
        string excelFilePath = "sample.xlsx";
        // Load the Excel file
        WorkBook workbook = WorkBook.Load(excelFilePath);
        // Access the first worksheet
        WorkSheet worksheet = workbook.WorkSheets[0];
        // Iterate through rows and columns to read data
        foreach (var row in worksheet.Rows)
        {
            foreach (var cell in row)
            {
                Console.Write(cell.Value + "\t");
            }
            Console.WriteLine();
        }
    }
}
using IronXL;
using System;
class Program
{
    static void Main(string [] args)
    {
        // Path to the Excel file
        string excelFilePath = "sample.xlsx";
        // Load the Excel file
        WorkBook workbook = WorkBook.Load(excelFilePath);
        // Access the first worksheet
        WorkSheet worksheet = workbook.WorkSheets[0];
        // Iterate through rows and columns to read data
        foreach (var row in worksheet.Rows)
        {
            foreach (var cell in row)
            {
                Console.Write(cell.Value + "\t");
            }
            Console.WriteLine();
        }
    }
}
Imports Microsoft.VisualBasic
Imports IronXL
Imports System
Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Path to the Excel file
		Dim excelFilePath As String = "sample.xlsx"
		' Load the Excel file
		Dim workbook As WorkBook = WorkBook.Load(excelFilePath)
		' Access the first worksheet
		Dim worksheet As WorkSheet = workbook.WorkSheets(0)
		' Iterate through rows and columns to read data
		For Each row In worksheet.Rows
			For Each cell In row
				Console.Write(cell.Value & vbTab)
			Next cell
			Console.WriteLine()
		Next row
	End Sub
End Class
VB   C#

Tout d'abord, nous incluons les espaces de noms nécessaires. Les classes et méthodes offertes par la bibliothèque IronXL sont contenues dans l'espace de noms IronXL. Le chemin d'accès au fichier Excel que nous souhaitons lire(sample.xlsx) est spécifié. WorkBook est utilisé pour charger le fichier Excel. Le classeur Excel est représenté par un objet WorkBook renvoyé par la commande Load() fonction. En utilisant le classeur, nous pouvons accéder à la première feuille de calcul en utilisant workbook.WorkSheets[0]. À l'aide de boucles foreach imbriquées, nous parcourons les lignes et les colonnes de la feuille de calcul. La valeur de chaque cellule est affichée sur la console.

Comment utiliser C# pour convertir PowerPoint en image : Figure 7 - Sortie de la console.

Pour en savoir plus sur le code, consultezExemples de lecture d'IronXL.Excel.

Conclusion

Dans de nombreuses applications logicielles, il est nécessaire de convertir des présentations PowerPoint en photos à l'aide de C#. En utilisant ou non l'espace de noms Microsoft.Office.Interop.PowerPoint, la procédure peut être réalisée assez rapidement. Les exemples de code de cet article vous aideront à inclure facilement la capacité de conversion de PowerPoint en images dans vos applications C#, créant ainsi une pléthore de possibilités de distribution et de modification des informations.

Sans nécessiter l'installation d'Excel sur la machine cible ni dépendre de la bibliothèque Interop,IronXL offre un moyen rapide et efficace d'exécuter des opérations Excel en C#. Les développeurs qui utilisent IronXL pour traiter des données Excel dans leurs applications C# le trouveront utile car il rationalise les opérations telles que la lecture, l'écriture et la modification des fichiers Excel grâce à son API conviviale et à son vaste ensemble de fonctionnalités. IronXL offre une solution fiable qui accroît l'efficacité et l'adaptabilité des projets de développement liés à Excel, qu'il s'agisse de créer des rapports, de traiter des données ou d'automatiser des tâches de feuille de calcul.

Aessai gratuit d'IronXL il existe un logiciel qui offre des fonctionnalités et une assistance étendues. Visitez le siteInformations sur les licences IronXL pour obtenir des informations complètes et actualisées sur l'octroi de licences. Visitez le siteSite web d'Iron Software pour en savoir plus sur les produits d'Iron Software.

< PRÉCÉDENT
Comment tourner un PDF de 180 degrés (Tutoriel pour débutants)
SUIVANT >
Comment utiliser C# pour créer une présentation PowerPoint