Вопрос

У меня есть клиент моего веб-приложения, который активно использует данные из нашей системы для презентаций Powerpoint.

В настоящее время мы разрешаем экспортировать данные в более традиционные типы файлов... PDF, CSV, HTML и некоторые другие.Powerpoint, похоже, не совсем автоматизирован.

Есть ли способ на стороне сервера ASP.NET автоматизировать создание и загрузку по требованию формата файла Powerpoint для отчета из системы?

Это было полезно?

Решение

В Эта статья, Стив предлагает использовать приложение Aspose Slide.

Он также объясняет шаг за шагом, как создать файл PowerPoint.

Вот несколько выдержек кода (в VB):

Открытие существующего файла PowerPoint:

 Dim fs As  System.IO.FileStream = _

   New System.IO.FileStream("c:\mypath\myfile.ppt", _

   System.IO.FileMode.Open, System.IO.FileAccess.Read)

Dim MyPres As Presentation = New Presentation(fs)

fs.Close() 

Зацикливание слайдов и вывод их форматов шаблонов:

Dim slides  As Slides = MyPres.Slides

For i As Integer = 0 To slides.Count - 1

   Response.Write(MyPres.Slides(i).Layout.ToString + "<br>")

Next

В своей статье он подробнее описывает, как это сделать.

Другие советы

Что ж, у вас есть два способа сделать это без сторонних инструментов.Первым будет автоматизация PowerPoint, но для этого необходимо, чтобы на вашем сервере был установлен PowerPoint.Второй — использовать новый формат файла pptx и сгенерировать документ PowerPoint с использованием XML.

Я обнаружил, что лучший способ начать работу с XML — это просто создать Powerpoint, который делает то, что вы хотите, затем сохранить его и просмотреть XML.Вы также можете просмотреть документацию Microsoft.В целом работать с форматами XML довольно легко.

Наконец, могут существовать некоторые сторонние элементы, но будьте осторожны, чтобы они не требовали автоматизации COM.

Что касается предыдущего постера, ваше утверждение неверно.

На самом деле у вас есть только один вариант автоматизации этого процесса с помощью ASP.NET на стороне сервера.Используйте открытые ссылки XML, упомянутые Беном в исходном ответе...

Манипулирование файлами Excel 2007 и PowerPoint 2007 с помощью файлов Open XML Format API (часть 1 из 2) Manipulaing Excel 2007 и PowerPoint 2007 с API Open XML Format (часть 2 из 2)

Причина этого в том, что автоматизация офиса на стороне сервера совершенно не поддерживается и является плохой практикой кодирования, а запуск серверов автоматизации com, предназначенных для интерактивного использования в неинтерактивной среде, является потенциальным рецептом катастрофы.

Итак, используйте открытый XML API и сгенерируйте свои pptx.

Существуют также другие сторонние варианты, похожие на Aspose Slides, например OfficeWriter. Автор PowerPoint.

Я не совсем уверен, как работает Aspose Slides, но с помощью PowerPoint Writer у вас есть существующая отформатированная презентация PowerPoint с маркерами данных, которую вы обрабатываете с помощью PowerPoint Writer, чтобы заменить маркеры данных данными.Вот некоторые Примеры.

есть другой метод: конвертируйте презентацию Power Point в изображения или xps (презентация с серебряным светом), а затем используйте какой-то json (jquery), чтобы показать и загрузить их.

я реализую изображения и презентацию xps silverlight в своем веб-приложении

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top