public static void divideToLines(Slides slides, Slide slide, TextRange textRange) { var slideNumber = slide.SlideIndex; float slideDuration = slide.SlideShowTransition.AdvanceTime; int divisionNumber = textRange.Lines().Count; float duration = durationAfterDivisions(slideDuration, divisionNumber / 2); string textFrmLines = ""; foreach (TextRange line in textRange.Lines()) { if (textFrmLines.Length > 0) { textFrmLines += line.Text; SlidesManipulation.createNewSlide(slides, ++slideNumber, textFrmLines.Trim(), duration); SlidesManipulation.createNewSlide(slides, ++slideNumber, "", 0.01F); textFrmLines = ""; } else { textFrmLines += line.Text; } } //add the rest of textFrmLines if (textFrmLines.Length > 0) { SlidesManipulation.createNewSlide(slides, ++slideNumber, textFrmLines, duration); SlidesManipulation.createNewSlide(slides, ++slideNumber, "", 0.1F); } //delete slides slide.Delete(); slides[slideNumber].Delete(); }
/// <summary> /// This constructor is only for SLide Background /// </summary> /// <param name="slide"></param> public ezImage(Slide slide) { slide.Duplicate(); Slide tempSlide = slide.Parent.Slides[slide.SlideIndex + 1]; while (tempSlide.Shapes.Count > 0) { tempSlide.Shapes[1].Delete(); } //Export the image of the shape int slideWidth = (int)Utility.SlideWidthGet(slide.Parent); int slideHeight = (int)Utility.SlideHeightGet(slide.Parent); string shapeExportDirectory = PowerPointStudioRibbon.currentPPTPath + "\\images"; if (!Directory.Exists(shapeExportDirectory)) { Directory.CreateDirectory(shapeExportDirectory); } string exportedUrl = shapeExportDirectory + "\\" + Utility.RandomNumber(1000, 10000, ezShape.shapeCount) + ".png"; tempSlide.Export(exportedUrl, "PNG", slideWidth * 4, slideHeight * 4); actualUrl = exportedUrl; exportedUrl = exportedUrl.Replace("\\", "/"); imgurlLarge = exportedUrl.Replace(PowerPointStudioRibbon.currentPPTPath.Replace("\\", "/"), "https://ezilmdev.org"); imgurlMedium = exportedUrl.Replace(PowerPointStudioRibbon.currentPPTPath.Replace("\\", "/"), "https://ezilmdev.org"); imgurlSmall = exportedUrl.Replace(PowerPointStudioRibbon.currentPPTPath.Replace("\\", "/"), "https://ezilmdev.org"); tempSlide.Delete(); }
private void ClearSlides() { Slides slides = presentation.Slides; do { Slide slide = slides[1]; slide.Delete(); } while (slides.Count != 0); }
public static PowerPointBgEffectSlide BgEffectFactory(Slide refSlide, bool coverShape = true) { if (refSlide == null) { return null; } // here we cut-paste the shape to get a reference of those shapes var oriShapeRange = refSlide.Shapes.Paste(); // preprocess the shapes, eliminate animations for shapes foreach (Shape shape in oriShapeRange) { FromSlideFactory(refSlide).RemoveAnimationsForShape(shape); } // TODO: make use of PowerPointLabs.Presentation Model!!! // cut the original shape cover again and duplicate the slide // here the slide will be duplicated without the original shape cover oriShapeRange.Cut(); var newSlide = FromSlideFactory(refSlide.Duplicate()[1]); // get a copy of original cover shapes var copyShapeRange = newSlide.Shapes.Paste(); // paste the original shape cover back oriShapeRange = refSlide.Shapes.Paste(); // make the range invisible before animated the slide copyShapeRange.Visible = Core.MsoTriState.msoFalse; MakeAnimatedBackground(newSlide); copyShapeRange.Visible = Core.MsoTriState.msoCTrue; oriShapeRange.Visible = Core.MsoTriState.msoCTrue; newSlide.Transition.EntryEffect = PpEntryEffect.ppEffectFadeSmoothly; newSlide.Transition.Duration = 0.5f; var bgEffectSlide = new PowerPointBgEffectSlide(newSlide.GetNativeSlide()); try { if (coverShape) { bgEffectSlide = PrepareForeground(oriShapeRange, copyShapeRange, refSlide, newSlide); } } catch (InvalidOperationException e) { refSlide.Delete(); throw new InvalidOperationException(e.Message); } return bgEffectSlide; }
public static void divideToSentences(Slides slides, Slide slide, TextRange textRange) { var slideNumber = slide.SlideIndex; float slideDuration = slide.SlideShowTransition.AdvanceTime; //the number represents to how many slides to divide int divisionNumber = textRange.Sentences().Count; float duration = durationAfterDivisions(slideDuration, divisionNumber); foreach (TextRange sentence in textRange.Sentences()) { SlidesManipulation.createNewSlide(slides, ++slideNumber, sentence.Text.Trim(), duration); SlidesManipulation.createNewSlide(slides, ++slideNumber, "", 0.01F); } //delete slides slide.Delete(); slides[slideNumber].Delete(); }
private void Deleted(int ImageID) { Libs.Data objdata = new Data(Global.ConnectionSql); try { Slide obj = new Slide(); obj.DataObject = objdata; bool ok = obj.Delete(ImageID); this.BindingData(); } catch (Exception ex) { Global.WriteLogError("Deleted() " + ex); } finally { objdata.DeConnect(); } }
public void Delete() { _slide.Delete(); }