We're sorry Aspose doesn't work properply without JavaScript enabled.

Free Support Forum - aspose.com

How to write in a shape?

I have attached a ppt.

I have a top shape with Alternate Text as "ReportHeaderLine2"
Currently the text is Active NPS Scorecard – Q1 2012…
How do i change this by code?
I want to access the shape using alternate text and then change the text…

Hi Pankaj,

I have observed the requirements shared by you. Please use the following code snippet to serve the purpose.

public static ShapeEx FindShape(SlideEx slide, string alttext)
//Iterating through all shapes inside the slide
for (int i = 0; i < slide.Shapes.Count; i++)
//If the alternative text of the slide matches with the required one then
//return the shape
if (slide.Shapes[i].AlternativeText.CompareTo(alttext) == 0)
return slide.Shapes[i];
return null;

public static void ChangeText()
PresentationEx pres = new PresentationEx(“D:\Aspose Data\Pankaj.pptx”);
ShapeEx shape = FindShape(pres.Slides[0], “ReportHeaderLine2”);
if (shape is AutoShapeEx)
AutoShapeEx ashp = (AutoShapeEx)shape;
TextFrameEx txtFrm = ashp.TextFrame;
if (txtFrm != null && txtFrm.Text != “”)
ParagraphEx para = txtFrm.Paragraphs[0];
PortionEx portion = para.Portions[0];
portion.Text = “New Text Added”;

pres.Write(“D:\Aspose Data\Pankaj2.pptx”);


Many Thanks,
									Hi Mudasir,<br><br>I set AltText for shap or place holder, but I still can't get the value, Alternativetext I got always empty. Could you send me the template working with your example code for me can try?<br><br>I need the solution can detect object uniquely. I'm thinking of defining AltText for them. I hope it will work.<br><br>Thank you,<br>GN<br><br><br>

Hi GN,

I feel you may be adding the alternative text in the title. You need to add that in description field. Please visit this thread link for your kind reference.

Many Thanks,