本文整理汇总了C#中PowerPointLabs.Models.PowerPointSlide.Copy方法的典型用法代码示例。如果您正苦于以下问题:C# PowerPointSlide.Copy方法的具体用法?C# PowerPointSlide.Copy怎么用?C# PowerPointSlide.Copy使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PowerPointLabs.Models.PowerPointSlide
的用法示例。
在下文中一共展示了PowerPointSlide.Copy方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetStepBackWithBackgroundShapeToZoom
private static PowerPoint.Shape GetStepBackWithBackgroundShapeToZoom(PowerPointSlide currentSlide, PowerPointSlide addedSlide, PowerPoint.Shape previousSlidePicture, out PowerPoint.Shape backgroundShape)
{
currentSlide.Copy();
PowerPoint.Shape currentSlideCopy = addedSlide.Shapes.PasteSpecial(PowerPoint.PpPasteDataType.ppPastePNG)[1];
Utils.Graphics.FitShapeToSlide(ref currentSlideCopy);
currentSlideCopy.Name = "PPTZoomOutShape" + DateTime.Now.ToString("yyyyMMddHHmmssffff");
previousSlidePicture.Copy();
PowerPoint.Shape previousSlidePictureCopy = addedSlide.Shapes.Paste()[1];
Globals.ThisAddIn.Application.ActiveWindow.View.GotoSlide(addedSlide.Index);
// Scale everything up by this ratio.
float ratio = PowerPointPresentation.Current.SlideWidth / previousSlidePictureCopy.Width;
currentSlideCopy.Width *= ratio;
currentSlideCopy.Height *= ratio;
currentSlideCopy.Left = -ratio * previousSlidePictureCopy.Left;
currentSlideCopy.Top = -ratio * previousSlidePictureCopy.Top;
// for some reason height is locked to width, so we only need to change width here.
previousSlidePictureCopy.Width *= ratio;
previousSlidePictureCopy.Left = 0;
previousSlidePictureCopy.Top = 0;
backgroundShape = currentSlideCopy;
return previousSlidePictureCopy;
}
示例2: AddDrillDownAnimation
public static void AddDrillDownAnimation(PowerPoint.Shape selectedShape, PowerPointSlide currentSlide,
out PowerPointDrillDownSlide addedSlide, bool includeAckSlide = true, bool deletePreviouslyAdded = true)
{
try
{
if (currentSlide == null || currentSlide.Index == PowerPointPresentation.Current.SlideCount)
{
System.Windows.Forms.MessageBox.Show("No next slide is found. Please select the correct slide", "Unable to Add Animations");
addedSlide = null;
return;
}
//Pick up the border and shadow style, to be applied to zoomed shape
selectedShape.PickUp();
PrepareZoomShape(currentSlide, ref selectedShape);
PowerPointSlide nextSlide = GetNextSlide(currentSlide, deletePreviouslyAdded);
PowerPoint.Shape nextSlidePicture = null, shapeToZoom = null;
currentSlide.HideIndicator();
if (backgroundZoomChecked)
{
nextSlidePicture = GetNextSlidePictureWithBackground(currentSlide, nextSlide);
nextSlidePicture.Apply();
PrepareNextSlidePicture(currentSlide, selectedShape, ref nextSlidePicture);
addedSlide = (PowerPointDrillDownSlide)currentSlide.CreateDrillDownSlide();
addedSlide.DeleteAllShapes();
nextSlidePicture.Copy();
shapeToZoom = addedSlide.Shapes.Paste()[1];
addedSlide.DeleteShapeAnimations(shapeToZoom);
currentSlide.Copy();
var backgroundShape = addedSlide.Shapes.PasteSpecial(PowerPoint.PpPasteDataType.ppPastePNG)[1];
backgroundShape.Apply();
Utils.Graphics.FitShapeToSlide(ref backgroundShape);
backgroundShape.ZOrder(Office.MsoZOrderCmd.msoSendBackward);
backgroundShape.Name = "PPTZoomInShape" + DateTime.Now.ToString("yyyyMMddHHmmssffff");
addedSlide.PrepareForDrillDown();
addedSlide.AddDrillDownAnimationBackground(backgroundShape, shapeToZoom, nextSlidePicture);
}
else
{
PowerPoint.Shape pictureOnNextSlide = null;
nextSlidePicture = GetNextSlidePictureWithoutBackground(currentSlide, nextSlide, out pictureOnNextSlide);
nextSlidePicture.Apply();
PrepareNextSlidePicture(currentSlide, selectedShape, ref nextSlidePicture);
addedSlide = (PowerPointDrillDownSlide)currentSlide.CreateDrillDownSlide();
addedSlide.DeleteAllShapes();
nextSlidePicture.Copy();
shapeToZoom = addedSlide.Shapes.Paste()[1];
addedSlide.DeleteShapeAnimations(shapeToZoom);
currentSlide.Copy();
var backgroundShape = addedSlide.Shapes.PasteSpecial(PowerPoint.PpPasteDataType.ppPastePNG)[1];
backgroundShape.Apply();
Utils.Graphics.FitShapeToSlide(ref backgroundShape);
backgroundShape.ZOrder(Office.MsoZOrderCmd.msoSendBackward);
backgroundShape.Name = "PPTZoomInShape" + DateTime.Now.ToString("yyyyMMddHHmmssffff");
addedSlide.PrepareForDrillDown();
addedSlide.AddDrillDownAnimationNoBackground(backgroundShape, shapeToZoom, pictureOnNextSlide);
pictureOnNextSlide.Delete();
}
currentSlide.ShowIndicator();
Globals.ThisAddIn.Application.ActiveWindow.View.GotoSlide(addedSlide.Index);
Globals.ThisAddIn.Application.CommandBars.ExecuteMso("AnimationPreview");
if (includeAckSlide) PowerPointPresentation.Current.AddAckSlide();
}
catch (Exception e)
{
PowerPointLabsGlobals.LogException(e, "AddDrillDownAnimation");
ErrorDialogWrapper.ShowDialog("Error when adding drill down animation", "An error occurred when adding drill down animation.", e);
throw;
}
}