/ / Como criar um vídeo a partir de um único slide ppt - c #, interoperabilidade, powerpoint

Como criar um vídeo a partir de um único slide ppt - c #, interoperabilidade, powerpoint

Eu estou convertendo uma apresentação do PowerPoint (.ppt) dentro de .wmv arquivo de vídeo usando este código:

static void Main(string[] args)
{
string fileName = @"D:example1.pptx";
string exportName = "video_of_presentation";
string exportPath = @"D:{0}.wmv";

Microsoft.Office.Interop.PowerPoint.Application ppApp = new Microsoft.Office.Interop.PowerPoint.Application();
ppApp.Visible = MsoTriState.msoTrue;
ppApp.WindowState = PpWindowState.ppWindowMinimized;
Microsoft.Office.Interop.PowerPoint.Presentations oPresSet = ppApp.Presentations;
Microsoft.Office.Interop.PowerPoint._Presentation oPres = oPresSet.Open(
fileName,
MsoTriState.msoFalse,
MsoTriState.msoFalse,
MsoTriState.msoFalse);

try
{
oPres.CreateVideo(exportName);
oPres.SaveCopyAs(String.Format(exportPath, exportName),
PowerPoint.PpSaveAsFileType.ppSaveAsWMV,
MsoTriState.msoCTrue);
}
finally
{
ppApp.Quit();
}
}

É ótimo trabalho. Agora eu estou tentando converter um único slide desta apresentação em arquivo de vídeo. Eu tentei usar isso:

var i = 0;
foreach (var slide in oPres.Slides)
{
slide.CreateVideo(string.Format("slide{0}", i));
i++;
}

Mas parece que o slide não tem CreateVideo método.

Acho que preciso criar uma nova apresentação a cada iteração e adicionar um slide a ela, mas não consigo entender como adicionar um slide da minha apresentação a uma nova apresentação.

Eu tentei este código:

Presentation singleSlidePpt = ppApp.Presentations.Add(MsoTriState.msoTrue);
singleSlidePpt.Slides.Add(oPres.Slides[0], CustomLayout);

Alguma sugestão de como resolver este problema?

Respostas:

2 para resposta № 1

Salve a apresentação em um novo nome e exclua todos os slides que você DON "T precisar.

Certifique-se de fazê-lo na ordem inversa, senão você vai obter os resultados errados.


-1 para resposta № 2

Se você deseja converter um PPT em vídeo, o próprio PowerPoint tem essa função "criar vídeo".

Mas eu não sei se pode converter para .wmv vídeo diretamente. Se não, você pode usar um conversor depois que o PPT é convertido em vídeo, embora não pareça o caminho mais simples.