Créer de nouvelles présentations avec VSTO et Aspose.Slides pour .NET
VSTO a été développé pour permettre aux développeurs de créer des applications pouvant s’exécuter à l’intérieur de Microsoft Office. VSTO est basé sur COM mais il est enveloppé dans un objet .NET afin de pouvoir être utilisé dans des applications .NET. VSTO nécessite le support du .NET framework ainsi que le runtime CLR de Microsoft Office. Bien qu’il puisse être utilisé pour créer des compléments Microsoft Office, il est presque impossible de l’utiliser comme composant côté serveur. Il présente également de sérieux problèmes de déploiement.
Aspose.Slides for .NET est un composant qui peut être utilisé pour manipuler des présentations Microsoft PowerPoint, tout comme VSTO, mais il présente plusieurs avantages :
- Aspose.Slides ne contient que du code managé et ne nécessite pas l’installation du runtime Microsoft Office.
- Il peut être utilisé comme composant côté client ou comme composant côté serveur.
- Le déploiement est simple puisque Aspose.Slides est contenu dans un seul DLL.
Création d’une présentation
Voici deux exemples de code illustrant comment VSTO et Aspose.Slides for .NET peuvent être utilisés pour atteindre le même objectif. Le premier exemple est VSTO; le deuxième exemple utilise Aspose.Slides.
Exemple VSTO
La sortie VSTO

//Remarque : PowerPoint est un espace de noms qui a été défini ci‑dessus ainsi
//using PowerPoint = Microsoft.Office.Interop.PowerPoint;
//Créer une présentation
PowerPoint.Presentation pres = Globals.ThisAddIn.Application
.Presentations.Add(Microsoft.Office.Core.MsoTriState.msoFalse);
//Get the title slide layout
PowerPoint.CustomLayout layout = pres.SlideMaster.
CustomLayouts[PowerPoint.PpSlideLayout.ppLayoutTitle];
//Add a title slide.
PowerPoint.Slide slide = pres.Slides.AddSlide(1, layout);
//Set the title text
slide.Shapes.Title.TextFrame.TextRange.Text = "Slide Title Heading";
//Set the sub title text
slide.Shapes[2].TextFrame.TextRange.Text = "Slide Title Sub-Heading";
//Write the output to disk
pres.SaveAs("c:\\outVSTO.ppt",
PowerPoint.PpSaveAsFileType.ppSaveAsPresentation,
Microsoft.Office.Core.MsoTriState.msoFalse);
Exemple Aspose.Slides for .NET
La sortie d’Aspose.Slides

//Créer une présentation
Presentation pres = new Presentation();
//Ajouter la diapositive titre
ISlide slide = pres.Slides.AddEmptySlide(pres.LayoutSlides[0]);
//Définir le texte du titre
((IAutoShape)slide.Shapes[0]).TextFrame.Text = "Slide Title Heading";
//Définir le texte du sous-titre
((IAutoShape)slide.Shapes[1]).TextFrame.Text = "Slide Title Sub-Heading";
//Écrire la sortie sur le disque
pres.Save("c:\\data\\outAsposeSlides.pptx", SaveFormat.Ppt);