Default Bullet type is not being read or clone properly


#1

I have a presentation with a shape that is not part of the master. When I use Aspose to read the paragraphs of the textframe, it incorrectly tells me that the bulletcharacter is §

When I do a "clone slide", without modifying the master of the new slide, the bullet has changed from the default square of the master to the incorrect § symbol.

Please see the attached project demonstrating both phases of the problem.

Phil


#2

I did a little more testing and it appears that if the bullet coloring is "default" for the bullets, the bullet character is still incorrect, but the slides clone properly.

So, to restate this, the only issue I really care about is cloneslides not changing the bulletcharacter, especially when it is the default "square" bullet from the master.

Any thoughts or workarounds?

Any help is greatly appreciated.

Phil


#3

I think we found the problem.
It will be fixed asap.


#4

I’m having a similar problem, but in my case, the bullets disappear completely. I’ve attached an example presentation and here’s the code to replicate the problem:

Presentation newPres = new Presentation();
Presentation oldPres = new Presentation(“example.ppt”);

SortedList temp = new SortedList();
for (int i = 1; i <= oldPres.Slides.LastSlidePosition; i++)
{
Slide source = oldPres.GetSlideByPosition(i);
oldPres.CloneSlide(source, newPres.Slides.LastSlidePosition + 1, newPres, temp);
}

// Remove the empty slide from when we created the new presentation
newPres.Slides.RemoveAt(0);

newPres.Write(“broken.ppt”);

#5

Losing font of bullet has been fixed in the 2.4.2 hot fix.
Problem with disappearing bullets (if master slide doesn’t have bullets) is not fixed yet.


#6

Thank you for your help. A couple more questions, though.

Why does the character show properly but no properties of the paragraph indicate that is is a square bullet as opposed to the funky sign?

When I run the test now, the paragraphs appear different- rawfontindex is different before and after cloning. The slide, however appears correctly. In fact, rawfontindex differs from fontindex.

Any ideas? I'm grateful for the fix but concerned about the underlying issues.

Phil


#7

Ok, so after some work, and using PPT automation, it looks like the bullet font (not the regular) was being lost and the bullet font was being set to Arial. the character corresponding to the 2 byte number - 167 in wingdings (normal bullet font for PPT I think) is a square block. The character corresponding to 167 in Arial, however, is the funky symbol.

Sound right?

So, the question still remains, how do I test for this in the future- should fontIndex be = 1 for both the source and the post clone operations?

Phil


#8

I think you already understood, square bullet and character you see in debugger (or check in Module1.vb) have the same code but different font. This character looks like a square with Wingdings and as different character with Arial font.

Really you can’t check if bullet was cloned correctly because after cloning fonts can have other indexes.
Sure, you can get font by index in the result presentation and check name.


#9

Hello Rickard.

As a temporal workaround you can add

newPres.DeleteUnusedMasters() call after newPres.Slides.RemoveAt(0). This will fix problem in case all original slides will be removed from target presentation.