Я работаю над проектом, который требует автоматизации экспорта презентаций PowerPoint в формат .mp4.Я выяснил, как сохранить PowerPoint в формате .mp4 с помощью PowerShell, но я не смог найти никакой документации о том, как изменить количество секунд, в течение которых слайды остаются на экране в видео, используя только PowerShell.
Текущий код:
$Application = New-Object -ComObject powerpoint.application
$Application.Visible = [Microsoft.Office.Core.MsoTriState]::msoTrue
$ThemePath = "C:\Users\Theme.potx"
$PPTXPath = "C:\Users\ExistingPresentation.pptx"
$SavePath = "C:\Users\MyPresentation.mp4"
$Presentation = $Application.Presentations.Open($ReportPath)
--Applies a theme for the slides
$Presentation.ApplyTemplate($ThemePath)
--Saves as a Video
$Presentation.SaveAs($SavePath, 39)
$Presentation.Close()
На что я пытаюсь нацелиться:
РЕДАКТИРОВАТЬ: IВы нашли библиотеку в Windows PowerPoint, которая, кажется, содержит библиотеку классов, которые можно использовать для изменения ее членов.Одним из них является «powerpoint.application», теоретически следующий сценарий должен быть возможен в соответствии с предложением Тео, хотя вместо этого я получаю ошибку.
$SlideShowTransition = New-Object -ComObject powerpoint.SlideShowTransition
$SlideShowTransition.AdvanceOnTime = $True
$SlideShowTransition.AdvanceTime = 10
New-Object : Retrieving the COM class factory for component with CLSID {00000000-0000-0000-0000-000000000000} failed due to the following error: 80040154 Class not
registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
At line:1 char:13
+ $Whatever = New-Object -ComObject powerpoint.SlideShowTransition
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ResourceUnavailable: (:) [New-Object], COMException
+ FullyQualifiedErrorId : NoCOMClassIdentified,Microsoft.PowerShell.Commands.NewObjectCommand
Вот еще один снимок экрана непосредственно из среды.По какой-то причине SlideShowTransition не отображается.Возможно, мне не хватает ссылки ...?