using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
Comment utiliser C# pour convertir PowerPoint en image
Jordi Bardia
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.
Présentation de IronPPT : La bibliothèque PowerPoint .NET d'Iron Software
IronPPT charge et enregistre sans problème des fichiers PPTX - aucun Microsoft Office requis. Parfait pour automatiser les diapositives, le texte, les formes et les images dans n'importe quelle application .NET. Commencez avec IronPPT maintenant!
Comment utiliser C# ; pour convertir PowerPoint en image
Créer l'instance de l'application PowerPoint.
Ouvrir la présentation en utilisant l'instance.
Vérifier et créer un dossier de sortie.
Itérer à travers les diapositives et exporter les diapositives vers des images.
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.
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.
Sélectionnez l'emplacement de stockage du projet.
Cliquez sur "Créer" pour commencer à travailler sur un nouveau projet d'application Console.
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
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
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
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
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
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.
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.
Jordi maîtrise parfaitement Python, C# et C++. Lorsqu'il ne met pas à profit ses compétences chez Iron Software, il se consacre à la programmation de jeux. Partageant des responsabilités en matière de tests de produits, de développement de produits et de recherche, Jordi apporte une valeur ajoutée considérable à l'amélioration continue des produits. Cette expérience variée le stimule et l'engage, et il dit que c'est l'un des aspects qu'il préfère dans son travail chez Iron Software. Jordi a grandi à Miami, en Floride, et a étudié l'informatique et les statistiques à l'université de Floride.
< 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
Des millions d'ingénieurs dans le monde entier lui font confiance
Réservez une démo en direct gratuite
Réservez une démonstration personnelle de 30 minutes.
Pas de contrat, pas de détails de carte, pas d'engagements.
Voici ce à quoi vous pouvez vous attendre :
Une démonstration en direct de notre produit et de ses principales fonctionnalités
Obtenez des recommandations de fonctionnalités spécifiques au projet
Toutes vos questions trouvent réponse pour vous assurer de disposer de toutes les informations dont vous avez besoin. (Aucun engagement de votre part.)
CHOISIR L'HEURE
VOS INFORMATIONS
Réservez votre démo en direct gratuite
Fiable par plus de 2 millions d'ingénieurs dans le monde entier