Автозагрузка фильма в презентации PowerPoint с C #
-
09-10-2019 - |
Вопрос
Я в настоящее время пытаюсь изменить некоторые настройки в файлах .pptx через C # и Microsoft.Office.Interop.PowerPoint
. Отказ У меня есть некоторые .wmv фильмы, связанные с несколькими слайдами презентации. В то время были созданы презентации, все фильмы играют, как только они нажат. Тем не менее, я хочу изменить это, чтобы начать автоматически воспроизведение, как только просмотрена слайд. Это должно быть сделано с большим количеством презентаций, поэтому нет возможности сделать это вручную.
Я нашел PlaySettings.PlayOnEntry
Собственность, но я не могу понять, как его использовать. Я нашел несколько примеров, как это сделать с новым встроенным фильмом (а затем только для Visual Basic), но так как фильмы уже встроены, это не то, что я хочу.
Я также не имею представления, как я могу на самом деле могу получить доступ к любым объектам на текущем слайде, возможно, есть способ проверить, является ли форма видеофайла, а затем изменять настройку, но MSDN-ссылка не очень полезна на офисе Темы. Я использую PowerPoint 2007 и Visual Studio 2010, если это имеет значение.
Решение 2
Понятно. Поиск по всем формам презентации и отфильтровывая фильмы:
//While iterating through all slides i:
objShapes = objPres.Slides[i].Shapes;
foreach (Microsoft.Office.Interop.PowerPoint.Shape s in objShapes) {
if(s.Name.Contains(".wmv")){
s.AnimationSettings.PlaySettings.PlayOnEntry = MsoTriState.msoTrue;
}
}
Другие советы
@ Решение Леннарта является частью этого, вам понадобится триггер страницы
var videoAnimation = slide.TimeLine.MainSequence.FindFirstAnimationFor(objShapes);
if (videoAnimation != null)
{
videoAnimation.Timing.TriggerType = PowerPoint.MsoAnimTriggerType.msoAnimTriggerWithPrevious;
}