Is RTL Text operation available with Aspose.Slides?


#1

I want to replace the texts in various languages to RTL language strings read from right to left, but it doesn’t seem like it is as I tested with the code below.
I set Presentation.DefaultTextStyle.DefaultParagraphFormat.RightToLeft = NullableBool.True.
How can I replace the texts correctly to any RTL languages I want?

Please find the attached data hello.zip (52.5 KB) contains the input/output files I used below.

.Net core 2.1/Aspose.Slides 19.5.0

Presentation pres = new Presentation("hello.pptx");
pres.DefaultTextStyle.DefaultParagraphFormat.RightToLeft = NullableBool.True;
foreach (ISlide sld in pres.Slides)
{
	foreach (IShape shp in sld.Shapes) 
	{
		string typeName = shp.GetType().Name;
		if (typeName == "AutoShape")
		{
			((IAutoShape)shp).TextFrame.Text = "مرحبا بالعالم";
			((IAutoShape)shp).TextFrame.TextFrameFormat.AutofitType = TextAutofitType.Normal;
		}
	}
}
pres.Save("hello_1.pptx", SaveFormat.Pptx);

My own question posted below on another thread is evoked from the same purpose; I want to replace the text in other languages, correctly.


#2

@KDSSHO,

I have worked with source file and have been able to observe issue. A ticket with ID SLIDESNET-41363 has been created in our issue tracking system to further investigate to resolve the issue. We will share good news with you soon.


#3

Can I expect some other RTLs such as Persian/Farsi, Hebrew, and Urdu, not only Arabic, would be covered when the ticket SLIDESNET-41363 is resolved?


#4

@KDSSHO,

I have mentioned this in ticket and will share good news with you soon.


#5

@KDSSHO,

I like to inform that we have investigated issue in details. For further investigation, could you please specify the output that you are expected to get if the actual one doesn’t satisfy you. The best option would be manually create PPTX file which you identify as correct.