none
WPF power Point Application changer le thème d'une diapositive RRS feed

  • Question

  • Bonjour, dans une solution WPF j'execute un code qui ouvre Power Point et me crée des diapositives.

    Via un control Button un autre code remplace la Diapo 1 par une diapo Vide avec un texte.

    Je bute sur comment changer le Background de la nouvelle diapo , passer de blanc à vert par exemple.

    Voici mon code :

     private void Diapo1Btn_Click(object sender, RoutedEventArgs e)
            {
               
                Slide S1 = PptPresent.Slides[1];
                S1.Select();
                S1.Delete();
                PptSlides = PptPresent.Slides;
                NewSlide1 = PptSlides.Add(1, PpSlideLayout.ppLayoutBlank);   
                NewSlide1.Shapes.AddTextEffect(MsoPresetTextEffect.msoTextEffect27,
                    "Un nouvel arrivant au zoo de la rivère", "Impact", 50, MsoTriState.msoFalse, MsoTriState.msoFalse, 50, 300);
    
            }



    JF Collombet ® CreateSpecificCulture

    PS : je voudrais également savoir comment changer la couleur d'un texte dans la diapositive,

    je n'ai trouvé que ce code :

    PptTextRange.Font.Color.RGB=0x0078D8;

    c'est pas terrible pour savoir de quelle couleur il s'agit !

    ya t-il une autre méthode ?

    dimanche 12 février 2017 08:02

Toutes les réponses

  • Du coup j'ai trouvé une méthode pour par exemple insérer une Forme dans une diapo et en changer le style (couleur, épaisseur de trait...) mais avec le système de couleur RGB c'est pas super pour s'y retrouver. Mais bon si ya pas mieux... voici le code :

      private void AddFormes_Click(object sender, RoutedEventArgs e)
            {
                Slide S3 = PptPresent.Slides[3];
                S3.Select();        
                var _with8 = S3.Shapes.AddShape(MsoAutoShapeType.msoShapeLeftArrow, 310, 140, 110, 30);
                _with8.Line.ForeColor.RGB = System.Drawing.Color.FromArgb(0, 255, 0).ToArgb();
                _with8.Fill.ForeColor.RGB = System.Drawing.Color.FromArgb(0, 255, 0).ToArgb();    
                var _with7 = S3.Shapes.AddShape(MsoAutoShapeType.msoShapeOval, 120, 70, 45, 45);
                _with7.Fill.Visible = MsoTriState.msoFalse;
                _with7.Line.Weight = 8;
                _with7.Line.DashStyle = MsoLineDashStyle.msoLineSolid;
                _with7.Line.ForeColor.RGB = System.Drawing.Color.FromArgb(0,255, 0).ToArgb();
            }


    JF Collombet ® CreateSpecificCulture

    lundi 13 février 2017 05:44
  • Et pour changer le Background d'une diapo :

     PptSlides = PptPresent.Slides;
                NewSlide1 = PptSlides.Add(1, PpSlideLayout.ppLayoutSectionHeader);
                var _WithNewSlide = NewSlide1;
                _WithNewSlide.BackgroundStyle = MsoBackgroundStyleIndex.msoBackgroundStylePreset2;

    Si ca peut aider qq1.


    JF Collombet ® CreateSpecificCulture

    lundi 13 février 2017 06:00