Convertir les présentations PowerPoint en documents Word dans .NET
Vue d’ensemble
Cet article fournit une solution aux développeurs pour convertir des présentations PowerPoint et OpenDocument en documents Word à l’aide d’Aspose.Slides for .NET et d’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 :
- Instanciez la classe Presentation et chargez un fichier de présentation.
- Instanciez les classes Document et DocumentBuilder pour générer un document Word.
- Définissez la taille de page du document Word pour qu’elle corresponde à celle de la présentation en utilisant la propriété DocumentBuilder.PageSetup.
- Définissez les marges du document Word en utilisant la propriété DocumentBuilder.PageSetup.
- Parcourez toutes les diapositives de la présentation à l’aide de la propriété Presentation.Slides :
- Générez une image de diapositive en utilisant la méthode
GetImagede l’interface ISlide, puis enregistrez‑la dans un flux mémoire. - Ajoutez l’image de la diapositive au document Word en utilisant la méthode
InsertImagede la classe DocumentBuilder.
- Générez une image de diapositive en utilisant la méthode
- Enregistrez 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 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 la 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 des 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 aucune installation de Microsoft Office n’est requise.
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 vous permet de travailler avec des présentations créées dans différentes versions de Microsoft PowerPoint.