动态添加文本

这两种方法遵循以下步骤:

  • 创建一个演示文稿。
  • 添加一个空白幻灯片。
  • 添加一个文本框。
  • 设置一些文本。
  • 撰写演示文稿。

VSTO


 private void AddTextBox()

{

	//创建一个演示文稿

	PowerPoint.Presentation pres = Globals.ThisAddIn.Application

		.Presentations.Add(Microsoft.Office.Core.MsoTriState.msoFalse);

	//获取空白幻灯片布局

	PowerPoint.CustomLayout layout = pres.SlideMaster.

		CustomLayouts[7];

	//添加一个空白幻灯片

	PowerPoint.Slide sld = pres.Slides.AddSlide(1, layout);

	//添加文本

	PowerPoint.Shape shp =sld.Shapes.AddTextbox

	(Microsoft.Office.Core.MsoTextOrientation.msoTextOrientationHorizontal,150, 100, 400, 100);

	//设置文本

	PowerPoint.TextRange txtRange = shp.TextFrame.TextRange;

	txtRange.Text = "动态添加的文本";

	txtRange.Font.Name = "Arial";

	txtRange.Font.Bold = Microsoft.Office.Core.MsoTriState.msoTrue;

	txtRange.Font.Size = 32;

	//将输出写入磁盘

	pres.SaveAs("outVSTOAddingText.ppt",

		PowerPoint.PpSaveAsFileType.ppSaveAsPresentation,

		Microsoft.Office.Core.MsoTriState.msoFalse);

}

Aspose.Slides


 static void AddTextBox()

{

	//创建一个演示文稿

	Presentation pres = new Presentation();

	//默认构造函数创建时会默认添加一个空白幻灯片

	//所以我们不需要添加任何空白幻灯片

	Slide sld = pres.GetSlideByPosition(1);

	//获取Arial字体索引

	//如果是从默认构造函数创建演示文稿,则始终为0

	int arialFontIndex = 0;

	//添加文本框

	//为了添加它,我们将首先添加一个矩形

	Shape shp = sld.Shapes.AddRectangle(1200, 800, 3200, 370);

	//隐藏其边框

	shp.LineFormat.ShowLines = false;

	//然后在其中添加一个文本框

	TextFrame tf = shp.AddTextFrame("");

	//设置文本

	tf.Text = "动态添加的文本";

	Portion port = tf.Paragraphs[0].Portions[0];

	port.FontIndex = arialFontIndex;

	port.FontBold = true;

	port.FontHeight = 32;

	//将输出写入磁盘

	pres.Write("outAspose.ppt");

}

下载示例代码