使用 VSTO 和 Aspose.Slides for PHP 通过 Java 动态添加文本
Contents
[
Hide
]
开发人员常见的任务之一是动态地向幻灯片添加文本。本文展示了使用 VSTO 和 Aspose.Slides for PHP via Java 动态添加文本的代码示例。
动态添加文本
这两种方法遵循以下步骤:
- 创建一个演示文稿。
- 添加一张空白幻灯片。
- 添加一个文本框。
- 设置一些文本。
- 写入演示文稿。
VSTO 代码示例
以下代码片段生成一个带有普通幻灯片和一串文本的演示文稿。
在 VSTO 中创建的演示文稿
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//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 for PHP 通过 Java 示例
以下代码片段使用 Aspose.Slides 创建一个带有普通幻灯片和一串文本的演示文稿。
使用 Aspose.Slides for PHP 通过 Java 创建的演示文稿
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//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); |