Convertir des présentations PowerPoint en documents Word en C#
Vue d’ensemble
Cet article fournit une solution aux développeurs pour convertir les présentations PowerPoint et OpenDocument en documents Word en utilisant Aspose.Slides for .NET et Aspose.Words for .NET. Le guide étape par étape vous accompagne à chaque étape du processus de conversion.
Convertir une présentation en document Word
Suivez les instructions ci‑dessous pour convertir une présentation PowerPoint ou OpenDocument en document Word :
- Instancier la classe Presentation et charger un fichier de présentation.
- Instancier les classes Document et DocumentBuilder pour créer un document Word.
- Définir la taille de la page du document Word pour qu’elle corresponde à celle de la présentation à l’aide de la propriété DocumentBuilder.PageSetup.
- Définir les marges du document Word à l’aide de la propriété DocumentBuilder.PageSetup.
- Parcourir toutes les diapositives de la présentation à l’aide de la propriété Presentation.Slides :
- Générer une image de diapositive à l’aide de la méthode
GetImagede l’interface ISlide et l’enregistrer dans un flux mémoire. - Ajouter l’image de diapositive au document Word à l’aide de la méthode
InsertImagede la classe DocumentBuilder.
- Générer une image de diapositive à l’aide de la méthode
- Enregistrer le document Word dans un fichier.
Supposons que nous ayons une présentation “sample.pptx” qui ressemble à ceci :

L’exemple de code C# suivant montre comment convertir la présentation PowerPoint en document Word :
// Charger un fichier de présentation.
using var presentation = new Presentation("sample.pptx");
// Créer les objets Document et DocumentBuilder.
var document = new Document();
var builder = new DocumentBuilder(document);
// Définir la taille de la page dans le document Word.
var slideSize = presentation.SlideSize.Size;
builder.PageSetup.PageWidth = slideSize.Width;
builder.PageSetup.PageHeight = slideSize.Height;
// Définir les marges dans le document Word.
builder.PageSetup.LeftMargin = 0;
builder.PageSetup.RightMargin = 0;
builder.PageSetup.TopMargin = 0;
builder.PageSetup.BottomMargin = 0;
const float scaleX = 2, scaleY = 2;
// Parcourir toutes les diapositives de la présentation.
foreach (var slide in presentation.Slides)
{
// Générer une image de diapositive et l’enregistrer dans un flux mémoire.
using var image = slide.GetImage(scaleX, scaleY);
using var imageStream = new MemoryStream();
image.Save(imageStream, ImageFormat.Png);
// Ajouter l’image de diapositive au document Word.
imageStream.Seek(0, SeekOrigin.Begin);
builder.InsertImage(imageStream.ToArray(), builder.PageSetup.PageWidth, builder.PageSetup.PageHeight);
builder.InsertBreak(BreakType.PageBreak);
}
// Enregistrer le document Word dans un fichier.
document.Save("output.docx");
Le résultat :

FAQ
Quels composants doivent être installés pour convertir les présentations PowerPoint et OpenDocument en documents Word ?
Vous devez simplement ajouter les packages NuGet respectifs pour Aspose.Slides for .NET et Aspose.Words for .NET à votre projet C#. Les deux bibliothèques fonctionnent comme des API autonomes et il n’est pas nécessaire d’installer Microsoft Office.
Tous les formats de présentation PowerPoint et OpenDocument sont-ils pris en charge ?
Aspose.Slides for .NET prend en charge tous les formats de présentation, y compris PPT, PPTX, ODP et d’autres types de fichiers courants. Cela garantit que vous pouvez travailler avec des présentations créées dans diverses versions de Microsoft PowerPoint.