Set slide style

2017-08-23 06:06:20 Written by zaki zou

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using PowerPoint = Microsoft.Office.Interop.PowerPoint;
using Office = Microsoft.Office.Core;

namespace VSTO
{
    public partial class ThisAddIn
    {
        private void ThisAddIn_Startup(object sender, System.EventArgs e)
        {
            //Create empty presentation
            PowerPoint.Presentation ppt = this.Application.Presentations.Add();

            //Add a blank slide
            PowerPoint.Slide slide = ppt.Slides.Add(1, PowerPoint.PpSlideLayout.ppLayoutBlank);

            //Add shape to slide
            PowerPoint.Shape shape = slide.Shapes.AddShape(Office.MsoAutoShapeType.msoShapeRectangle, 300, 100, 300, 100);

            //Set the style of slide
            shape.Line.Style = Office.MsoLineStyle.msoLineSingle;
            shape.Line.Weight = 5;
            //Border color
            shape.Line.ForeColor.RGB = 0x000000CC;
            //Background color
            shape.Fill.ForeColor.RGB = 0x00000000;

            //Set the style of slide
            slide.BackgroundStyle = Office.MsoBackgroundStyleIndex.msoBackgroundStylePreset1;
            slide.Background.Fill.ForeColor.RGB = 0x00CCFFCC;

            //Save the file
            ppt.SaveAs("Style.pptx");
        }

        private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
        {
        }

        #region VSTO generated code

        /// <summary>
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// </summary>
        private void InternalStartup()
        {
            this.Startup += new System.EventHandler(ThisAddIn_Startup);
            this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
        }
        
        #endregion
    }
}

Replace text in slide

2017-08-23 06:04:17 Written by zaki zou

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using PowerPoint = Microsoft.Office.Interop.PowerPoint;
using Office = Microsoft.Office.Core;

namespace VSTO
{
    public partial class ThisAddIn
    {
        private void ThisAddIn_Startup(object sender, System.EventArgs e)
        {
            //Open ppt document
            PowerPoint.Presentation ppt = Application.Presentations.Open("../../Data/Sample.pptx");

            //Loop through all slides and shapes
            foreach (PowerPoint.Slide slide in ppt.Slides)
            {
                foreach (PowerPoint.Shape shape in slide.Shapes)
                {
                    //Replace the specified text
                    shape.TextFrame.TextRange.Replace("Spire", "Replacement", 0, Office.MsoTriState.msoFalse, Office.MsoTriState.msoFalse);
                }
            }  
   
            //Save the file         
            ppt.SaveAs("Replace.pptx");
        }

        private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
        {
        }

        #region VSTO generated code

        /// <summary>
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// </summary>
        private void InternalStartup()
        {
            this.Startup += new System.EventHandler(ThisAddIn_Startup);
            this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
        }
        
        #endregion
    }
}

Print presentation

2017-08-23 06:01:51 Written by zaki zou

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using PowerPoint = Microsoft.Office.Interop.PowerPoint;
using Office = Microsoft.Office.Core;

namespace VSTO
{
    public partial class ThisAddIn
    {
        private void ThisAddIn_Startup(object sender, System.EventArgs e)
        {
            //Open ppt document
            PowerPoint.Presentation ppt = Application.Presentations.Open("../../Sample.pptx");

            //Fit to page
            ppt.PrintOptions.FitToPage = Office.MsoTriState.msoTrue;

            //Print
            ppt.PrintOut(1, ppt.Slides.Count, "", 0);
        }

        private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
        {
        }

        #region VSTO generated code

        /// <summary>
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// </summary>
        private void InternalStartup()
        {
            this.Startup += new System.EventHandler(ThisAddIn_Startup);
            this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
        }
        
        #endregion
    }
}

page 193