коллеги, кто-нибудь, пробовал автоматизировать создание/редактирование презентаций в PowerPoint?)
вопрос такой: как заменить/добавить на уже готовый слайд текст и изображение?
как содавать презентации разобрался(но это не точно))
а вот как добавить/заменить данные на конкретном слайде( с сохранением цветов, шрифтов и пр.) в уже созданной презентации не могу понять
вопрос такой: как заменить/добавить на уже готовый слайд текст и изображение?
как содавать презентации разобрался(но это не точно))
Примерно так):
string pictureFileName = @"C:\temp\example.jpg";
Application pptApplication = new Application();
Microsoft.Office.Interop.PowerPoint.Slides slides;
Microsoft.Office.Interop.PowerPoint._Slide slide;
Microsoft.Office.Interop.PowerPoint.TextRange objText;
// Create the Presentation File
Presentation pptPresentation = pptApplication.Presentations.Add(MsoTriState.msoTrue);
Microsoft.Office.Interop.PowerPoint.CustomLayout customLayout = pptPresentation.SlideMaster.CustomLayouts[Microsoft.Office.Interop.PowerPoint.PpSlideLayout.ppLayoutText];
// Create new Slide
slides = pptPresentation.Slides;
slide = slides.AddSlide(1, customLayout);
// Add title
objText = slide.Shapes[1].TextFrame.TextRange;
objText.Text = "FPPT.com";
objText.Font.Name = "Arial";
objText.Font.Size = 32;
objText = slide.Shapes[2].TextFrame.TextRange;
objText.Text = "Content goes here\nYou can add text\nItem 3";
Microsoft.Office.Interop.PowerPoint.Shape shape = slide.Shapes[2];
slide.Shapes.AddPicture(pictureFileName,Microsoft.Office.Core.MsoTriState.msoFalse,Microsoft.Office.Core.MsoTriState.msoTrue,shape.Left, shape.Top, shape.Width, shape.Height);
slide.NotesPage.Shapes[2].TextFrame.TextRange.Text = "This demo is created by FPPT using C# - Download free templates from http://FPPT.com";
pptPresentation.SaveAs(@"c:\temp\fppt.pptx", Microsoft.Office.Interop.PowerPoint.PpSaveAsFileType.ppSaveAsDefault, MsoTriState.msoTrue);
//pptPresentation.Close();
//pptApplication.Quit();