Ajouter du texte dynamiquement

Les deux méthodes suivent ces étapes :

  • Créer une présentation.
  • Ajouter une diapositive vierge.
  • Ajouter une zone de texte.
  • Définir un texte.
  • Écrire la présentation.

VSTO


 private void AddTextBox()

{

	//Créer une présentation

	PowerPoint.Presentation pres = Globals.ThisAddIn.Application

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

	//Obtenir la mise en page de la diapositive vierge

	PowerPoint.CustomLayout layout = pres.SlideMaster.

		CustomLayouts[7];

	//Ajouter une diapositive vierge

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

	//Ajouter un texte

	PowerPoint.Shape shp =sld.Shapes.AddTextbox

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

	//Définir un texte

	PowerPoint.TextRange txtRange = shp.TextFrame.TextRange;

	txtRange.Text = "Texte ajouté dynamiquement";

	txtRange.Font.Name = "Arial";

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

	txtRange.Font.Size = 32;

	//Écrire la sortie sur le disque

	pres.SaveAs("outVSTOAddingText.ppt",

		PowerPoint.PpSaveAsFileType.ppSaveAsPresentation,

		Microsoft.Office.Core.MsoTriState.msoFalse);

}

Aspose.Slides


 static void AddTextBox()

{

	//Créer une présentation

	Presentation pres = new Presentation();

	//Une diapositive vierge est ajoutée par défaut, lorsque vous créez

	//une présentation à partir du constructeur par défaut

	//Donc, nous n'avons pas besoin d'ajouter de diapositive vierge

	Slide sld = pres.GetSlideByPosition(1);

	//Obtenir l'index de police pour Arial

	//Il est toujours 0 si vous créez une présentation à partir

	//du constructeur par défaut

	int arialFontIndex = 0;

	//Ajouter une zone de texte

	//Pour l'ajouter, nous ajouterons d'abord un rectangle

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

	//Cacher sa ligne

	shp.LineFormat.ShowLines = false;

	//Puis ajouter un cadre de texte à l'intérieur

	TextFrame tf = shp.AddTextFrame("");

	//Définir un texte

	tf.Text = "Texte ajouté dynamiquement";

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

	port.FontIndex = arialFontIndex;

	port.FontBold = true;

	port.FontHeight = 32;

	//Écrire la sortie sur le disque

	pres.Write("outAspose.ppt");

}

Télécharger le code d’exemple