OUTILS PPT

Comment utiliser C# pour créer une présentation PowerPoint

Regan Pun
Regan Pun
mars 6, 2024
Mise à jour avril 3, 2025
Partager:

Introduction

Présentations PowerPoint sont essentielles pour les rapports d'entreprise, les présentations de vente, les conférences académiques et les tableaux de bord générés par logiciel. Cependant, créer des diapositives PowerPoint manuellement peut être fastidieux et chronophage.

Ne serait-il pas formidable de pouvoir automatiser la création de PowerPoint en C# sans avoir besoin de télécharger des bibliothèques d'interopérabilité ? C'est là qu'intervient la puissante bibliothèque PowerPoint d'Iron Software, IronPPT. IronPPT est une bibliothèque .NET puissante qui permet aux développeurs de créer, modifier et exporter des présentations PowerPoint de manière programmatique avec facilité, sans besoin de la bibliothèque d'interopérabilité Microsoft PowerPoint. Que vous ayez besoin de générer des diapositives dynamiquement, d'insérer des graphiques ou de convertir des présentations en PDF, IronPPT offre une solution simple et efficace.

Aujourd'hui, nous allons explorer comment créer des présentations PowerPoint en C# en utilisant IronPPT. Nous aborderons :

  • Installation de IronPPT
  • Créer et enregistrer des fichiers PowerPoint
  • Ajout de diapositives, de texte, d'images et de formes
  • Meilleures pratiques pour l'automatisation de PowerPoint

    Plongeons-nous dedans ! 🚀

Premiers pas avec IronPPT

Csharp Create Powerpoint Tutorial 1 related to Premiers pas avec IronPPT

Avant de plonger dans la création de présentations de manière programmatique, configurons d'abord notre environnement de développement.

Installation de IronPPT

Pour utiliser IronPPT, installez le package NuGet dans votre projet C# :

  1. Ouvrez Visual Studio.

  2. Ouvrez la Console du gestionnaire de paquets (Outils > Gestionnaire de paquets NuGet > Console du gestionnaire de paquets).

  3. Exécutez la commande suivante : ``

Install-Package IronPPT ``

  1. Alternativement, vous pouvez l'installer en allant dans "Outils -> Gestionnaire de packages NuGet -> Gérer les packages NuGet pour la solution", recherchez IronPPT, puis cliquez sur "Installer".

    Installer IronPPT via l'écran du gestionnaire de packages NuGet

  2. Créez un nouveau projet d'application Console.

    Une fois installé, vous êtes prêt à commencer à créer des présentations PowerPoint au sein de notre .NET Framework.

Créer une présentation PowerPoint en C#

1. Initialisation d'un fichier PowerPoint

La première étape de l'automatisation PowerPoint consiste à créer un nouveau fichier PowerPoint. Avec IronPPT, vous pouvez générer des présentations PowerPoint par programmation et les enregistrer sous forme de fichiers .pptx. Par défaut, le fichier PowerPoint généré est compatible avec Microsoft PowerPoint, Google Slides et d'autres logiciels qui prennent en charge le format .pptx. Pour l'exemple d'aujourd'hui, nous allons créer un nouveau projet Visual Studio.

Alors, pour notre premier exemple de code, nous allons créer un nouveau fichier de présentation PowerPoint vide. Ce sera notre point de départ, un simple fichier de présentation PowerPoint auquel nous pourrons ajouter du texte, du style, et plus encore par la suite.

using IronPPT;

class Program
{
    static void main()
    {
        // Creating a new PresentationDocument object
        var ppt = new PresentationDocument();

    // Save the blank file presentation
        ppt.Save("example.pptx");
    }
}
using IronPPT;

class Program
{
    static void main()
    {
        // Creating a new PresentationDocument object
        var ppt = new PresentationDocument();

    // Save the blank file presentation
        ppt.Save("example.pptx");
    }
}
Imports IronPPT

Friend Class Program
	Private Shared Sub main()
		' Creating a new PresentationDocument object
		Dim ppt = New PresentationDocument()

	' Save the blank file presentation
		ppt.Save("example.pptx")
	End Sub
End Class
$vbLabelText   $csharpLabel

Fichier de sortie

Présentation vierge créée avec IronPPT

Lorsque nous ouvrons la nouvelle présentation dans notre programme PowerPoint, nous pouvons voir qu'elle ne contient à ce stade qu'une seule diapositive vierge.

2. Ajouter des diapositives à PowerPoint

Une présentation PowerPoint se compose de plusieurs diapositives, chacune pouvant avoir des mises en page, du texte, des images et des éléments de design différents. En utilisant IronPPT, vous pouvez ajouter des diapositives dynamiquement à une présentation, modifier leur mise en page, et insérer du contenu par programmation. Ceci est utile pour les systèmes de reporting automatisés, les exportations de tableaux de bord et la génération de présentations.

À ce stade, notre document PowerPoint n'est qu'une seule diapositive vierge sans aucun contenu ni diapositives supplémentaires. Voyons comment vous pouvez commencer à ajouter des diapositives à votre présentation PowerPoint.

using IronPPT;
using IronPPT.Models;

// Loading in our presentation file
var ppt = new PresentationDocument("output.pptx");

ppt.AddSlide();

ppt.Save("output.pptx");
using IronPPT;
using IronPPT.Models;

// Loading in our presentation file
var ppt = new PresentationDocument("output.pptx");

ppt.AddSlide();

ppt.Save("output.pptx");
Imports IronPPT
Imports IronPPT.Models

' Loading in our presentation file
Private ppt = New PresentationDocument("output.pptx")

ppt.AddSlide()

ppt.Save("output.pptx")
$vbLabelText   $csharpLabel

Sortie

Csharp Create Powerpoint Tutorial 4 related to 2. Ajouter des diapositives à PowerPoint

🔹 En plus d'ajouter des diapositives simples comme celles-ci, vous pouvez ajouter plusieurs diapositives et les modifier dynamiquement en utilisant IronPPT. Pour notre exemple, nous avons uniquement ajouté deux diapositives à notre présentation, mais vous pouvez en ajouter autant que nécessaire.

3. Ajout de texte, d'images et de mise en forme

Une fois que vous avez ajouté des diapositives, l'étape suivante consiste à insérer du contenu. IronPPT vous permet d'ajouter :

  • Texte : Titres, paragraphes et contenu formaté.
  • Images : Logos, graphiques et captures d'écran.
  • Mise en forme personnalisée : Polices, couleurs et alignement.

    Par exemple, vous pouvez ajouter un titre à une diapositive, insérer une image et la positionner de manière dynamique en fonction de vos besoins de mise en page. En utilisant les classes ParagraphStyle et TextStyle d'IronPPT, nous pouvons appliquer un formatage et un style personnalisé au texte lors de son ajout aux diapositives.

Ajout de texte à une présentation PowerPoint

using IronPPT;
using IronPPT.Models;
using IronPPT.Enums;

// Creating a new PresentationDocument object
var ppt = new PresentationDocument("test.pptx");

// Adding simple text to the title slide
ppt.Slides[0].TextBoxes[0].AddText("Welcome to IronPPT");

TextBox textBox = new TextBox();
textBox.Type = ShapeType.Rectangle;
textBox.Width = 500;
textBox.Height = 200;
textBox.Position = (100, 100);
ppt.Slides[1].AddChild(textBox);

// Adding a styled paragraph to the second slide
var style = new ParagraphStyle()
{
    Alignment = TextAlignmentTypeValues.Center,
    NoBullet = true,
    LineSpacing = 30,
    ContextualSpacing = true,
};
TextStyle textStyle = new TextStyle()
{
    IsBold = true,
    Color = Color.Blue,
};

var paragraph = new Paragraph();
paragraph.Style = style;
paragraph.AddText("Let's create some awesome presentations with IronPPT!");
paragraph.TextStyle = textStyle;
ppt.Slides[1].TextBoxes[0].AddParagraph(paragraph);

ppt.Save("example.pptx");
using IronPPT;
using IronPPT.Models;
using IronPPT.Enums;

// Creating a new PresentationDocument object
var ppt = new PresentationDocument("test.pptx");

// Adding simple text to the title slide
ppt.Slides[0].TextBoxes[0].AddText("Welcome to IronPPT");

TextBox textBox = new TextBox();
textBox.Type = ShapeType.Rectangle;
textBox.Width = 500;
textBox.Height = 200;
textBox.Position = (100, 100);
ppt.Slides[1].AddChild(textBox);

// Adding a styled paragraph to the second slide
var style = new ParagraphStyle()
{
    Alignment = TextAlignmentTypeValues.Center,
    NoBullet = true,
    LineSpacing = 30,
    ContextualSpacing = true,
};
TextStyle textStyle = new TextStyle()
{
    IsBold = true,
    Color = Color.Blue,
};

var paragraph = new Paragraph();
paragraph.Style = style;
paragraph.AddText("Let's create some awesome presentations with IronPPT!");
paragraph.TextStyle = textStyle;
ppt.Slides[1].TextBoxes[0].AddParagraph(paragraph);

ppt.Save("example.pptx");
Imports IronPPT
Imports IronPPT.Models
Imports IronPPT.Enums

' Creating a new PresentationDocument object
Private ppt = New PresentationDocument("test.pptx")

' Adding simple text to the title slide
ppt.Slides(0).TextBoxes(0).AddText("Welcome to IronPPT")

Dim textBox As New TextBox()
textBox.Type = ShapeType.Rectangle
textBox.Width = 500
textBox.Height = 200
textBox.Position = (100, 100)
ppt.Slides(1).AddChild(textBox)

' Adding a styled paragraph to the second slide
Dim style = New ParagraphStyle() With {
	.Alignment = TextAlignmentTypeValues.Center,
	.NoBullet = True,
	.LineSpacing = 30,
	.ContextualSpacing = True
}
Dim textStyle As New TextStyle() With {
	.IsBold = True,
	.Color = Color.Blue
}

Dim paragraph As New Paragraph()
paragraph.Style = style
paragraph.AddText("Let's create some awesome presentations with IronPPT!")
paragraph.TextStyle = textStyle
ppt.Slides(1).TextBoxes(0).AddParagraph(paragraph)

ppt.Save("example.pptx")
$vbLabelText   $csharpLabel

Sortie

Ajout de texte et de zones de texte

Dans le code ci-dessus, nous avons ajouté un nouveau texte à la boîte de texte existante sur l'écran titre. Nous avons également créé une nouvelle zone de texte pour la deuxième diapositive, avant d'y ajouter du texte de paragraphe stylé. Ceci est un exemple simple de la façon dont vous pouvez ajouter du texte entièrement personnalisé à vos présentations PowerPoint avec IronPPT.

Ajouter une image

Ensuite, ajoutons une image à notre diapositive de titre et personnalisons sa taille et sa position pour la placer comme nous le souhaitons sur la diapositive.

using IronPPT;
using IronPPT.Models;

// Creating a new PresentationDocument object
var ppt = new PresentationDocument();

Image image = new Image();
image.LoadFromFile("example.png");
var newImage = ppt.Slides[0].AddImage(image);
newImage.Position = (150, 300);
newImage.Name = "IronPPT";
newImage.Width = 450;
newImage.Height = 200;

ppt.Save("output.pptx");
using IronPPT;
using IronPPT.Models;

// Creating a new PresentationDocument object
var ppt = new PresentationDocument();

Image image = new Image();
image.LoadFromFile("example.png");
var newImage = ppt.Slides[0].AddImage(image);
newImage.Position = (150, 300);
newImage.Name = "IronPPT";
newImage.Width = 450;
newImage.Height = 200;

ppt.Save("output.pptx");
Imports IronPPT
Imports IronPPT.Models

' Creating a new PresentationDocument object
Private ppt = New PresentationDocument()

Private image As New Image()
image.LoadFromFile("example.png")
Dim newImage = ppt.Slides(0).AddImage(image)
newImage.Position = (150, 300)
newImage.Name = "IronPPT"
newImage.Width = 450
newImage.Height = 200

ppt.Save("output.pptx")
$vbLabelText   $csharpLabel

Sortie

Ajouter une image à la première diapositive

4. Personnalisation des diapositives avec des formes et des graphiques

Au-delà des simples textes et images, les présentations PowerPoint contiennent souvent des éléments visuels tels que des formes. Avec IronPPT, nous pouvons ajouter des formes à notre fichier de présentation aussi facilement que nous avons ajouté le texte et l'image auparavant.

Pour démontrer, nous allons créer une forme circulaire et la dessiner sur la diapositive spécifiée à une position précise.

using IronPPT;
using IronPPT.Models;
using IronPPT.Enums;

// Creating a new PresentationDocument object
var ppt = new PresentationDocument("example.pptx");

Shape shape = new Shape();
shape.Name = "Circle";
shape.Type = ShapeType.Ellipse;
shape.Width = 300;
shape.Height = 300;
shape.FillColor = Color.PowderBlue;
shape.OutlineColor = Color.Black;
shape.Position = (180, 200);

ppt.Slides[1].AddShape(shape);

ppt.Save("example.pptx");
using IronPPT;
using IronPPT.Models;
using IronPPT.Enums;

// Creating a new PresentationDocument object
var ppt = new PresentationDocument("example.pptx");

Shape shape = new Shape();
shape.Name = "Circle";
shape.Type = ShapeType.Ellipse;
shape.Width = 300;
shape.Height = 300;
shape.FillColor = Color.PowderBlue;
shape.OutlineColor = Color.Black;
shape.Position = (180, 200);

ppt.Slides[1].AddShape(shape);

ppt.Save("example.pptx");
Imports IronPPT
Imports IronPPT.Models
Imports IronPPT.Enums

' Creating a new PresentationDocument object
Private ppt = New PresentationDocument("example.pptx")

Private shape As New Shape()
shape.Name = "Circle"
shape.Type = ShapeType.Ellipse
shape.Width = 300
shape.Height = 300
shape.FillColor = Color.PowderBlue
shape.OutlineColor = Color.Black
shape.Position = (180, 200)

ppt.Slides(1).AddShape(shape)

ppt.Save("example.pptx")
$vbLabelText   $csharpLabel

Sortie

Csharp Create Powerpoint Tutorial 7 related to 4. Personnalisation des diapositives avec des formes et des graphiques

Meilleures pratiques pour l'automatisation de PowerPoint en C#

Lors de l'automatisation de la génération de PowerPoint, prenez en compte les meilleures pratiques suivantes :

1. Optimiser les performances pour les grandes présentations

  • Limitez le nombre de diapositives pour prévenir la surcharge de mémoire.
  • Utilisez la compression pour les images afin de réduire la taille du fichier.
  • Évitez les objets redondants pour maintenir l'efficacité de la présentation.

2. Maintenir un design cohérent

  • Utilisez des polices et couleurs cohérentes pour maintenir l'identité de marque.
  • Appliquez des modèles de diapositives pour garantir une apparence professionnelle.
  • Structurez le contenu de manière logique pour améliorer la lisibilité.

3. Gérez les erreurs et exceptions avec élégance

  • Implémenter la gestion des erreurs pour gérer les entrées invalides.
  • Validez les chemins d'image avant d'insérer des images.
  • Assurez-vous que les fichiers exportés ont le bon format et les bonnes autorisations.

    En suivant ces meilleures pratiques, vous pouvez créer des présentations PowerPoint de haute qualité et professionnelles tout en garantissant fiabilité et efficacité.

Conclusion

L'automatisation de la création de PowerPoint en C# avec IronPPT révolutionne la donne pour les développeurs qui ont besoin de générer des présentations dynamiques rapidement et efficacement. Que vous développiez un système de reporting d'entreprise, un outil éducatif ou un tableau de bord commercial, IronPPT facilite la création et la manipulation de fichiers PowerPoint de manière programmée dans vos applications .NET.

Avec des fonctionnalités telles que la personnalisation des diapositives, l'insertion d'images et l'exportation en PDF, IronPPT fournit tout ce dont vous avez besoin pour une automatisation PowerPoint fluide.

Prêt à essayer ? Téléchargez l'essai gratuit pour IronPPT dès aujourd'hui et commencez à créer des présentations PowerPoint automatisées en C#!

Regan Pun
Ingénieur logiciel
Regan est diplômé de l'université de Reading, où il a obtenu une licence en ingénierie électronique. Avant de rejoindre Iron Software, il s'était concentré sur une seule tâche. Ce qu'il apprécie le plus chez Iron Software, c'est la diversité des tâches qu'il peut accomplir, qu'il s'agisse d'apporter une valeur ajoutée aux ventes, à l'assistance technique, au développement de produits ou à la commercialisation. Il aime comprendre comment les développeurs utilisent la bibliothèque d'Iron Software et utiliser ces connaissances pour améliorer continuellement la documentation et développer les produits.
SUIVANT >
Comment utiliser C# pour convertir PowerPoint en image