使用 VSTO 和 PowerPoint 2010,我正在尝试将音频文件插入到 PowerPoint 幻灯片中,并在幻灯片显示时自动播放。我用下面的代码做到了这一点:
var presentation = Gobals.ThisAddIn.Application.ActivePresentation;
var slide = presentation.Slides[1];
var audioShape = slide.Shapes.AddMediaObject2( audioFilePath );
var audioShape.AnimationSettings.PlaySettings.PlayOnEntry = Microsoft.Office.Core.MsoTriState.msoTrue;
现在,在幻灯片中已经有项目符号的动画(由 Effect 对象表示)。每个要点都有一个 Effect 对象。我的加载项将它们从点击触发转换为自动运行。这是通过类似于以下的代码完成的:
var effect = slide.TimeLine.MainSequence[1];
if ( effect.Timing.TriggerType == PowerPoint.MsoAnimTriggerType.msoAnimTriggerOnPageClick )
{
effect.Timing.TriggerType = PowerPoint.MsoAnimTriggerType.msoAnimTriggerWithPrevious;
effect.Timing.TriggerDelayTime = delay;
}
要点动画的最终目标是让每个动画在一定延迟后单独显示。
我的问题在于将音频形状设置为自动启动。这会导致每个项目符号点的单独效果对象被所有项目符号点的一个效果替换。因此,所有要点都立即显示在屏幕上,而不是在它们之间有延迟。我先插入音频还是先修改子弹效果都没有关系。
必须有一种方法可以将音频设置为自动播放而不会弄乱其他效果,因为您可以在 GUI 中进行操作。任何人都可以帮忙吗?提前致谢。