OpenXML SDK 2.0 и Aspose для создания документов Word 2007 на стороне сервера в .NET

Я собираюсь начать проект автоматизации Office на стороне сервера в .Net. Ниже перечислены основные запланированные мероприятия:

  • Создать текстовый документ
  • Используйте существующий шаблон текстового документа, имеющий титульную страницу, верхний колонтитул, нижний колонтитул, оглавление.
  • Сохранить файл
  • Встраивайте файлы и изменяйте их размер: HTML, изображение, Word, Excel
  • Генерация и форматирование оглавления
  • Форматирование документа: разрыв страницы, разрыв раздела, ориентация, ориентация при разрыве раздела, непрерывная нумерация страниц.
  • Замените встроенные «переменные» на использование определенного содержимого.

Я больше склоняюсь к OpenXML SDK 2.0, поскольку он бесплатный по сравнению с Aspose. Кроме того, в aspose я не смог найти образцы кодов для встраивания документа Excel в текстовый документ, что является ключевым требованием.

Не могли бы вы посоветовать мне использовать OpenXML SDK 2.0 или компонент Aspose? Каковы ключевые факторы в пользу Aspose (помимо простоты API), чтобы я тоже мог потратить время на его оценку?

Спасибо.


person Ajit Singh    schedule 10.06.2011    source источник
comment
Что будет использовать после того, как docx будет сгенерирован? Просто Word 2007 или новее? Это зависит от того, рассматриваете ли вы возможность использования altChunk (для встраивания HTML) и элементов управления содержимым с привязкой к данным.   -  person JasonPlutext    schedule 10.06.2011


Ответы (4)


Я только что очень внимательно изучил оба варианта для недавнего проекта и могу дать вам следующее резюме:

OpenXML SDK 2.0

  • Плюсы

    • Это хороший выбор, если вы хотите создавать документы Office на основе шаблонов.

    • Помимо основного SDK, существуют также «Инструменты повышения производительности для Microsoft Office», которые содержат функцию под названием «Отраженный код» для генерации кода .NET из существующего документа, который фактически создает этот точный документ. Действительно мило!

    • SDK является стабильным и поддерживается Microsoft.

    • Это бесплатно! Aspose.Words стоит немалые деньги, особенно если вы в вашей команде много разработчиков или вы хотели бы использовать его в среде «Программное обеспечение как услуга».

  • Минусы

    • OpenXML не может выполнять офисные функции. Короче говоря, это означает, что номера страниц оглавления или фактические номера страниц вашего документа Word не отображаются, пока пользователь не обновит документ. То же самое верно и для расчетов в Excel, поэтому вы не можете выполнять этот рендеринг / расчет на стороне сервера (мы снова находимся в WordAutomation).

      Поэтому, если вам нужна эта функция, я настоятельно рекомендую вам перейти с Aspose.Words.
      См. этот вопрос SO / ответьте, чтобы узнать подробности.

    • Кривая обучения для SDK кажется немного выше, чем для Aspose.Words.

Вы также можете ознакомиться с Word Automation Services в Sharepoint 2010 .

Надеюсь, это поможет!

person Martin Buberl    schedule 29.06.2011

Вы также можете попробовать Docentric, набор инструментов на основе OpenXML. Для этого требуется лицензия, но она быстро окупается за счет экономии времени.

Вы разрабатываете шаблон в Word (версия 2007 или новее), используя все параметры форматирования Word (верхние и нижние колонтитулы, таблицы, нумерацию, оглавление, вложенные документы, условное форматирование и т. Д.). Во время выполнения вы можете объединить данные с шаблоном. Данные могут поступать из баз данных или файлов xml.

Взгляните на это сообщение для образца приложения.

person Martina Nussbaum    schedule 03.03.2015

Вы можете найти подробное сравнение Aspose. Слова для .NET и OpenXML SDK в следующей теме: Почему не OpenXML SDK?

person Shahzad Latif    schedule 08.08.2011

Если вы открыты для других альтернатив, Windward Reports (отказ от ответственности - я технический директор Windward) подойдет вам нужно отлично. Как и Aspose, за это нужно платить. Но с Windward все, что вам нужно, будет очень просто, поскольку вы разрабатываете свой документ в Word.

И да, 1) он сгенерирует оглавление в окончательном документе, 2) он может импортировать рабочий лист Excel в сгенерированный документ Word, 3) вы можете поместить любые данные в шаблон во время выполнения и 4) он поддерживает все форматирования Word, разрывов и т. д.

person David Thielen    schedule 09.09.2011