本文整理汇总了C#中PowerPointLabs.Models.PowerPointSlide.DeleteShapesWithPrefix方法的典型用法代码示例。如果您正苦于以下问题:C# PowerPointSlide.DeleteShapesWithPrefix方法的具体用法?C# PowerPointSlide.DeleteShapesWithPrefix怎么用?C# PowerPointSlide.DeleteShapesWithPrefix使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PowerPointLabs.Models.PowerPointSlide
的用法示例。
在下文中一共展示了PowerPointSlide.DeleteShapesWithPrefix方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: EmbedSlideNotes
/// <summary>
/// This function will embed the auto generated speech to the current slide.
/// File names of generated audios will be returned.
/// </summary>
/// <param name="slide">Current slide reference.</param>
/// <returns>An array of auto generated audios' name.</returns>
private static string[] EmbedSlideNotes(PowerPointSlide slide)
{
String folderPath = Path.GetTempPath() + TempFolderName;
String fileNameSearchPattern = String.Format("Slide {0} Speech", slide.ID);
Directory.CreateDirectory(folderPath);
// TODO:
// obviously deleting all audios in current slide may not a good idea, some lines of script
// may still be the same. Check the line first before deleting, if the line has not been
// changed, leave the audio.
// to avoid duplicate records, delete all old audios in the current slide
var audiosInCurrentSlide = Directory.GetFiles(folderPath);
foreach (var audio in audiosInCurrentSlide)
{
if (audio.Contains(fileNameSearchPattern))
{
try
{
File.Delete(audio);
}
catch (Exception e)
{
Logger.LogException(e, "Failed to delete audio, it may be still playing. " + e.Message);
}
}
}
bool isSaveSuccessful = OutputSlideNotesToFiles(slide, folderPath);
string[] audioFiles = null;
if (isSaveSuccessful)
{
slide.DeleteShapesWithPrefix(SpeechShapePrefix);
audioFiles = GetAudioFilePaths(folderPath, fileNameSearchPattern);
for (int i = 0; i < audioFiles.Length; i++)
{
String fileName = audioFiles[i];
bool isOnClick = fileName.Contains("OnClick");
try
{
Shape audioShape = InsertAudioFileOnSlide(slide, fileName);
audioShape.Name = String.Format("PowerPointLabs Speech {0}", i);
slide.RemoveAnimationsForShape(audioShape);
if (isOnClick)
{
slide.SetShapeAsClickTriggered(audioShape, i, MsoAnimEffect.msoAnimEffectMediaPlay);
}
else
{
slide.SetAudioAsAutoplay(audioShape);
}
}
catch (COMException)
{
// Adding the file failed for one reason or another - probably cancelled by the user.
}
}
}
return audioFiles;
}
示例2: ProcessExistingHighlightSlide
//Delete existing animations
private static void ProcessExistingHighlightSlide(PowerPointSlide currentSlide, List<PowerPoint.Shape> shapesToUse)
{
currentSlide.DeleteIndicator();
currentSlide.DeleteShapesWithPrefix("PPTLabsHighlightBackgroundShape");
foreach (PowerPoint.Shape tmp in currentSlide.Shapes)
if (shapesToUse.Contains(tmp))
if (userSelection != HighlightTextSelection.kTextSelected)
currentSlide.DeleteShapeAnimations(tmp);
}