Erstellen einer neuen Präsentation
VSTO wurde entwickelt, um Entwicklern zu ermöglichen, Anwendungen zu erstellen, die innerhalb von Microsoft Office ausgeführt werden können. VSTO ist COM-basiert, aber es ist in ein .NET-Objekt eingewickelt, sodass es in .NET-Anwendungen verwendet werden kann. VSTO benötigt Unterstützung des .NET-Frameworks sowie zur CLR-basierten Laufzeit von Microsoft Office. Obwohl es für die Erstellung von Microsoft Office-Add-ins verwendet werden kann, ist es nahezu unmöglich, es als serverseitige Komponente zu nutzen. Es hat auch ernsthafte Bereitstellungsprobleme.
Aspose.Slides für Java ist eine Komponente, die verwendet werden kann, um Microsoft PowerPoint-Präsentationen zu manipulieren, ganz wie VSTO, aber es hat mehrere Vorteile:
- Aspose.Slides enthält nur verwalteten Code und benötigt keine Installation der Microsoft Office Laufzeit.
- Es kann als clientseitige Komponente oder als serverseitige Komponente verwendet werden.
- Die Bereitstellung ist einfach, da Aspose.Slides in einer einzigen JAR-Datei enthalten ist.
Erstellen einer Präsentation
Unten stehen zwei Codebeispiele, die veranschaulichen, wie VSTO und Aspose.Slides für Java verwendet werden können, um dasselbe Ziel zu erreichen. Das erste Beispiel ist VSTO; das zweite Beispiel verwendet Aspose.Slides.
VSTO-Beispiel
Die VSTO-Ausgabe
//Note: PowerPoint is a namespace which has been defined above like this | |
//using PowerPoint = Microsoft.Office.Interop.PowerPoint; | |
//Create a presentation | |
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); | |
Aspose.Slides für Java Beispiel
Die Ausgabe von Aspose.Slides
//Create a presentation | |
Presentation pres = new Presentation(); | |
//Add the title slide | |
ISlide slide = pres.getSlides().addEmptySlide(pres.getLayoutSlides().get_Item(0)); | |
//Set the title text | |
((IAutoShape)slide.getShapes().get_Item(0)).getTextFrame().setText("Slide Title Heading"); | |
//Set the sub title text | |
((IAutoShape)slide.getShapes().get_Item(1)).getTextFrame().setText("Slide Title Sub-Heading"); | |
//Write output to disk | |
pres.save("c:\\data\\outAsposeSlides.pptx",SaveFormat.Pptx); |