public static void SetSlideBackground()
        {
            string name       = "template.pptx";
            int?   slideIndex = 0;

            //solid
            //SlideBackground source = new SlideBackground("custom");
            //source.Type = "SolidFill";
            //source.FillFormat = new SolidFill("SolidFill", "red");

            //gradient
            //List<GradientFillStop> stops = new List<GradientFillStop>();
            //GradientFillStop stop1 = new GradientFillStop("red", 0);
            //GradientFillStop stop2 = new GradientFillStop("blue", 1);
            //stops.Add(stop1);
            //stops.Add(stop2);
            //GradientFill g = new GradientFill("FromCorner1", "Linear", stops, 30, false, "Horizontal");
            //source.FillFormat = g;

            //picture
            SlideBackground    source   = new SlideBackground("custom");
            string             fileName = "image.jpg";
            ResourceUriElement image    = new ResourceUriElement(new ResourceUri(fileName));

            source.FillFormat = new PictureFill(0, 0, 0, 0, 96, image, null, null, "Stretch");
            string password = null;
            string folder   = "input";
            string storage  = null;
            var    response = slidesApi.SetSlideBackground(name, slideIndex, source, folder, password, storage);
        }
        private PutLayoutSlideRequest createPutLayoutSlideRequest()
        {
            PutLayoutSlideRequest request = new PutLayoutSlideRequest();

            request.Name       = "test.pptx";
            request.SlideIndex = 1;
            LayoutSlide        layoutSlide = new LayoutSlide();
            ResourceUriElement uriElement  = new ResourceUriElement();
            ResourceUri        uri         = new ResourceUri();

            uri.Href                = "masterSlides/2";
            uriElement.Uri          = uri;
            layoutSlide.MasterSlide = uriElement;
            request.SlideDto        = layoutSlide;
            return(request);
        }
        public static void SetSlide()
        {
            string             name       = "template.pptx";
            int?               slideIndex = 2;
            string             password   = null;
            string             folder     = "input";
            string             storage    = null;
            Slide              slideDto   = slidesApi.GetSlide(name, slideIndex, password, folder, storage);
            ResourceUriElement uriElement = new ResourceUriElement();

            uriElement.Uri            = new ResourceUri("TitleOnly");
            slideDto.AlternateLinks   = null;
            slideDto.LayoutSlide      = uriElement;
            slideDto.ShowMasterShapes = !slideDto.ShowMasterShapes;
            var response = slidesApi.SetSlide(name, slideIndex, slideDto, password, folder, storage);
        }
        public static void AddNewShape()
        {
            string    name       = "addNewShape.pptx";
            int?      slideIndex = 0;
            string    password   = null;
            string    storage    = null;
            string    folder     = "input";
            ShapeBase source     = new ShapeBase();

            source.Name                 = "ShapeName";
            source.ShapeType            = ShapeTypeEnum.Bevel.ToString();
            source.X                    = 50;
            source.Y                    = 50;
            source.Height               = 100;
            source.Width                = 200;
            source.AlternativeText      = "AlternativeText";
            source.AlternativeTextTitle = "AlternativeTextTitle";
            source.Hidden               = false;
            //picture
            string             fileName = "input/image.jpg";
            ResourceUriElement image    = new ResourceUriElement(new ResourceUri(fileName));

            source.FillFormat     = new PictureFill(0, 0, 0, 0, 96, image, null, null, "Stretch");
            source.ZOrderPosition = 0;
            source.Type           = "ShapeBase";

            ArrowHeadProperties begainArrowHead = new ArrowHeadProperties("Short", "TriangleArrowHead", "Narrow");
            ArrowHeadProperties endArrowHead    = new ArrowHeadProperties("Short", "TriangleArrowHead", "Narrow");

            source.LineFormat = new LineFormat("Center", "Round", "Dot", "Bevel", "ThinThin",
                                               begainArrowHead, endArrowHead, null, new SolidFill("red"), 1, 4);

            int?shapeToClone = null;
            int?position     = null;

            var response = shapesApi.AddNewShape(name, slideIndex, source, password, folder, storage, shapeToClone, position);
        }