Text dynamisch hinzufügen mit VSTO und Aspose.Slides für Java

Text dynamisch hinzufügen

Beide Methoden folgen diesen Schritten:

  1. Erstellen Sie eine Präsentation.
  2. Fügen Sie eine leere Folie hinzu.
  3. Fügen Sie ein Textfeld hinzu.
  4. Legen Sie etwas Text fest.
  5. Schreiben Sie die Präsentation.

VSTO-Codebeispiel

Die folgenden Codeausschnitte führen zu einer Präsentation mit einer einfachen Folie und einem Textstring darauf.

Die Präsentation, wie sie in VSTO erstellt wurde

todo:image_alt_text

//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 blank slide layout
PowerPoint.CustomLayout layout = pres.SlideMaster.
CustomLayouts[7];
//Add a blank slide
PowerPoint.Slide sld = pres.Slides.AddSlide(1, layout);
//Add a text
PowerPoint.Shape shp = sld.Shapes.AddTextbox(Microsoft.Office.Core.MsoTextOrientation.msoTextOrientationHorizontal, 150, 100, 400, 100);
//Set a text
PowerPoint.TextRange txtRange = shp.TextFrame.TextRange;
txtRange.Text = "Text added dynamically";
txtRange.Font.Name = "Arial";
txtRange.Font.Bold = Microsoft.Office.Core.MsoTriState.msoTrue;
txtRange.Font.Size = 32;
//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 folgenden Codeausschnitte verwenden Aspose.Slides, um eine Präsentation mit einer einfachen Folie und einem Textstring darauf zu erstellen.

Die Präsentation, wie sie mit Aspose.Slides für Java erstellt wurde

todo:image_alt_text

//Create a presentation
Presentation pres = new Presentation();
//Blank slide is added by default, when you create
//presentation from default constructor
//So, we don't need to add any blank slide
ISlide sld = pres.getSlides().get_Item(1);
//Add a textbox
//To add it, we will first add a rectangle
IShape shp = sld.getShapes().addAutoShape(ShapeType.Rectangle, 1200, 800, 3200, 370);
//Hide its line
shp.getLineFormat().setStyle(LineStyle.NotDefined);
//Then add a textframe inside it
ITextFrame tf = ((IAutoShape)shp).getTextFrame();
//Set a text
tf.setText("Text added dynamically");
IPortion port = tf.getParagraphs().get_Item(0).getPortions().get_Item(0);
port.getPortionFormat().setFontBold(NullableBool.True);
port.getPortionFormat().setFontHeight(32);
//Write the output to disk
pres.save("c:\\data\\outAsposeSlides.pptx",SaveFormat.Pptx);