Подтвердить что ты не робот

Сколько стоит Open XML?

Мне любопытно, сколько людей используют Open XML (OOXML) в наши дни (чистые или через SDK) в закрытых и коммерческих средах. Я хорошо осведомлен о том, что происходит в "общедоступной сети" (MSDN, OpenXMLDeveloper.org и т.д.), Но мне интересно, как люди с этим работают, хорошие и плохие.

Большинство людей отказывается от VBA и VSTO в пользу работы напрямую с форматами OOXML? Какие преимущества вы получаете от OOXML, которые вы не получаете от объектной модели. Я хотел бы узнать больше о том, почему вы используете его или почему вы не, для чего вы его используете, и т.д.

Я просто пытаюсь понять сообщество на OOXML как подход к автоматизации документов или других видов использования. Я не нахожу форумы сообщества (этот или другие) невероятно активными с вопросами и пользователями (проверьте количество вопросов по тегам этого сообщения), поэтому мне интересно, я один из немногих, кто широко использует OOXML.

4b9b3361

Ответ 1

Теперь, когда Microsoft Office 2007 (и особенно Excel) поддерживает Open XML, мне гораздо легче работать, чем Office Automation. Для этого есть несколько основных причин:

  • Лучшая производительность;
  • Отсутствие ошибок в IPC (например, кто-то оставил Excel открытым в диалоговом окне "Сохранить как", сбой);
  • Никакая зависимость от самого Office или каких-либо внешних компонентов вообще;
  • Довольно легко писать расширения и запросы Linq в С#;
  • Может использоваться в серверных средах без каких-либо проблем или рисков.

Учитывая, что пользователи Office XP/2003 могут открывать файлы Office 2007 с пакетом совместимости, я не вижу причин продолжать использовать старые методы автоматизации или "OfficeML". Это немного кривая обучения, но, возможно, это лучший вариант сегодня - он бесплатный, он надежный и, самое главное, это собственный формат, используемый Office 2007 сегодня, и вам не нужны какие-либо глупые трюки, чтобы заставить его работать ( например, привязать контент контента XLS к HTML, как и для XL2003, и XL2007 жалуется на неправильное расширение).

Я бы не сказал, что это прямая замена VBA/VSTO - дело в том, что они, как правило, являются частью решения, где требование заключается в интеграции с самой средой Office. Использование OOXML обычно требует, чтобы вы записали вокруг него все приложение. Но для простого импорта/экспорта, вероятно, 90% автоматизации использовалось в прошлом, определенно, OOXML - это путь.

Ответ 2

Библиотеки, такие как Простой OOXML также могут значительно помочь с кривой обучения.

Ответ 3

Я много смотрел на эту технологию, я программировал в VBA, но это был способ для сложных моих потребностей. Есть несколько отличных вещей об использовании этого, что мое электронное обучение выиграет, как Linq и XML, но панель для перехода от VBA к базовым форматам слишком высока, и у меня нет роскоши такого времени и денег это потребует инвестиций в обучение форматам VS.Net и Open Office XML.

Но одна вещь, на которую я думаю, что это действительно поможет, - это метатегирование контента PowerPoint для LMS.

Ответ 4

Мы используем Open XML SDK для экспорта в Excel. Я должен сказать, что это довольно медленно, поэтому нам нужно было сделать некоторое кэширование самостоятельно (для общих строк). Библиотека представляет собой просто представление объектов формата Open XML. Иногда это может быть хорошо, иногда нет. Особенно, когда вам нужно хорошо знать стандарт Open XML, потому что SDK ничего не обработает для вас. Вы должны знать все ограничения, которые вводит формат, вы должны знать, какие элементы вы не можете опустить в xlsx или docx и т.д. Это позволяет создавать непоследовательные таблицы Excel или текстовые документы, что не очень хорошо. Ну, это бесплатно по крайней мере:) Лучше, чем ничего.

Ответ 5

Я использовал Open Xml SDK для генерации документов в SharePoint, генерации PPTX для пользовательских презентаций (извлечение из XSLX для данных) и для "создания" составных документов из нескольких сегментов документа.

Формат и SDK великолепны. Не беспокойтесь о сервере в сценариях ASP.NET или SharePoint, а также о высокой скорости. Я не нашел слишком много сценариев, где SDK или "грубая сила" xml не могут достичь цели. Одним из примеров является защита паролем и DRM для документов, но это больше угловых случаев. Я бы согласился с aaronaught, что это не эксклюзивное решение, но SharePoint, VSTO и другие инструменты в инструменте для решений для создания документов.

Ответ 6

Я делаю сценарий, согласно которому производительность продаж для страны поставляется в PPT Deck с использованием Open XML

Ответ 7

Я использовал его для разбора файлов pptx, ища специальные комментарии в фигурах. Эти комментарии являются ссылками на другие ресурсы (чаще всего uri, файлы PDF и т.д.). Затем я использую программное обеспечение deepzoom для рендеринга pptx, а затем визуализую uri внутри формы. Весело, но медленно. Используйте его, чтобы помочь с исследованиями и "новым" способом взглянуть на плакаты. Но это не LOB.

Ответ 8

Мы недавно перешли из Word Interop в Open XML.

Наше приложение используется для создания счетов-фактур в формате Word и pdf. Когда Interop использовался, счетчик приличного размера составлял около 5-10 минут для генерации. Теперь, используя OpenXML и SSRS, время сократилось примерно до 30 секунд. Единственной проблемной областью с Word было то, что некоторые функции не были обратно совместимы с Word 2010 до 2007 года, и это заняло некоторое время, чтобы исправить и встать и работать. Как создание Оглавления, слияние документов и т.д.

Кроме этого, я думаю, что Linq, MSDN и Eric White Blog достаточно, чтобы вы шли в правильном направлении.