Хотя возможно generate PowerPoint presentations automatically using Office Automation, это not recommended for use on a server. Как вы можете создать презентацию PowerPoint без использования Office Automation?Каковы некоторые методы для создания презентаций PowerPoint без использования автоматизации Office?
Каковы некоторые методы для создания презентаций PowerPoint без использования автоматизации Office?
ответ
Другой вариант, который не упоминался, который мы в конечном счете приняли, заключается в использовании форматов файлов Open XML, которые наивно поддерживаются в Office 2007 и Office XP через compatibility pack. Использование Open XML SDK 1.0 получения чего-то рабочего оказалось удивительно простым.
Во-первых, общий шаблонный файл был подготовлен с помощью токенов, помещенных вместо содержимого, которое необходимо будет заменить. Затем в проект необходимо добавить ссылку на DocumentFormat.OpenXml. Сам код будет ссылаться на пространства имен DocumentFormat.OpenXml и DocumentFormat.OpenXml.Packaging. Наконец, код Переберите слайды выглядит следующим образом:
// Open the presentation
PresentationDocument presentation = PresentationDocument.Open(fileName, true);
// Loop through all of the slides in the presentation
foreach (SlidePart slide in presentation.PresentationPart.SlideParts)
{
// Read the XML out of the slide
XmlDocument xml = new XmlDocument();
xml.Load(slide.GetStream());
// TODO: Your XML manipulation code here
// Save the updated slide
xml.Save(slide.GetStream());
}
// Save the updated presentation
presentation.Close();
больше образцов для обработки Xml об OpenXml (PowerPoint)? – Kiquenet
Не уверен, что сообщение открыто, поскольку у меня есть вопрос о коде выше. У меня есть сервисное приложение в Win 2008, которое использует Microsoft.Office.Interop.PowerPoint, чтобы открыть презентацию в фоновом режиме и сохранить ее как «jpeg» - каждый слайд отдельно. Теперь, однако, мне нужно сделать то же самое в веб-приложении, но процесс не может открыть файл pptx. У меня есть все права администратора на всех учетных записях и т. Д. Посмотрите на свой код, как бы вы манипулировали слайдом с Open XML? Благодарю. – Risho
Вы можете написать код на стороне сервера, который использует библиотеку, которая может создавать документы формата PowerPoint. Например, в Java вы можете использовать Apache POI-HSLF для создания программных файлов PPT.
В зависимости от того, что вам нужно сделать, может потребоваться меньше усилий для начала работы с PPT-файлом шаблона и его программным образом изменить для вставки или редактирования содержимого.
Если ваша серверная технология - это ASP.NET, вы можете использовать Aspose.Slides. Он достаточно мощный и работает хорошо, хотя это может быть не экономически эффективное решение, в зависимости от того, что вы хотите сделать.
Как и в стороне, я пытался сделать некоторые поиск для получения информации о PowerPoint XML презентациях, но найти хорошее сочетание ключевых слов для Google трудно поскольку ключевое слово PowerPoint имеет тенденцию возвращать ссылки на презентации, написанные людьми. – rjzii
Должна быть PowerPoint? Существуют и другие форматы, которые могут быть проще в использовании. –
Спецификация проекта указывает, что она должна быть PowerPoint. – rjzii