разница между PowerPoint 2003 и 2010 (ParagraphFormat.Alignment) - PullRequest
2 голосов
/ 21 сентября 2011

Что мы делаем:

Мы создаем документы powerpoints для Powerpoint 2010 и Powerpoint 2003.

Где проблема:

Этикетки, созданные с использованием следующего исходного кода, выглядят по-разному в Powerpoint 2010 и Powerpoint 2003. Эта ошибка возникает только для этикеток с выравниванием = центр и / или если мы устанавливаем вращение> 0. (см. Скриншот)

private Microsoft.Office.Interop.PowerPoint.Shape AddLabel(Microsoft.Office.Interop.PowerPoint.Slide Slide,
        float Left, float Top, float Width, float Height, string Text, float FontSize, 
        bool Bold, Microsoft.Office.Interop.PowerPoint.PpParagraphAlignment Alignment)
{
        Microsoft.Office.Interop.PowerPoint.Shape label;

        label = Slide.Shapes.AddLabel(
            Microsoft.Office.Core.MsoTextOrientation.msoTextOrientationHorizontal,
            Left, Top, Width, Height);
        label.TextFrame.TextRange.Text = Text;
        label.TextFrame.TextRange.Font.Size = FontSize;
        label.TextFrame.TextRange.Font.Bold = Bold ? MsoTriState.msoTrue : MsoTriState.msoFalse;
        label.TextFrame.TextRange.ParagraphFormat.Alignment = Alignment;

        return label;
} 

[...]

label = AddLabel(slide, 50, (slide.Master.Height - 30) / 2, slide.Master.Height, 30,
            "Nutzen", 18, false, PpParagraphAlignment.ppAlignCenter);
label.Rotation = -90;

Кто-нибудь знает, есть ли простой способ сделать источник совместимым с обеими версиями Powerpoint?

enter image description here

...