Библиотеки OpenXML (альтернативы ClosedXML) [закрыто]



Каковы некоторые библиотеки, расширяющие OpenXML (или добавляющие к OpenXML своего рода слой абстракции), подобные ClosedXML?



Я ищу коммерческий или бесплатный инструмент по крайней мере с версией 1.0.



Заранее благодарю вас.

761   3  

3 ответов:

Open-Source: вы смотрели на EPPlus?

Слоган: создание расширенных электронных таблиц Excel 2007/2010 на сервере.

Лицензия: GNU Library General Public License (LGPL).

Я оценивал EPPlus, ClosedXML и SpreadsheetLight на прошлой неделе. Все три действительно отличные библиотеки, которые делают работу с чрезвычайно запутанным OpenXML легким ветерком. Я решил пойти с Эпплом по следующим причинам:

  • Изначально я собиралась пойти с закрытым пакетом. У него отличная документация, и структура объекта имела для меня много смысла. У меня есть некоторые требования к диаграммам, хотя и на данный момент, ClosedXML не имеет никаких диаграмм функции.

  • Затем я наткнулся на SpreadsheetLight, который также имеет хорошие документы и поддерживает некоторые графики. Мне также нравится отношение автора и его приверженность своему продукту. Тем не менее, проект построен поверх OpenXML 2.0 SDK, а не 2.5, что является для меня решающим фактором, потому что я хочу иметь гибкость для работы непосредственно с OpenXML в случае, если библиотека не совсем соответствует моим потребностям. Мой проект нацелен на excel 2013, поэтому я хочу иметь последний SDK для работать.

  • Наконец, я наткнулся на EPPlus, который имеет хорошую документацию и поддерживает построение графиков. Он был загружен гораздо больше раз, чем два других, что дает мне некоторую безопасность, зная, что другие используют его, и сообщество, кажется, активно вокруг проекта. Они также в настоящее время находятся на бета-версии 2 версии 4, которая звучит многообещающе из того, что говорят другие. Я также понимаю суть того, что EPPlus имеет хорошую производительность (не то, что другие обязательно плохие) и предстоящая версия 4, похоже, еще больше улучшит это.


Обновление

Еще одна очень полезная функция, которую я нашел в EPPlus, - это то, как он предоставляет XML для различных частей рабочего листа. Если есть функция, которая не поддерживается EPPlus, вы все равно можете отредактировать XML (в некоторых случаях), чтобы получить желаемый результат. Например, если у вас есть сводная диаграмма и вы хотите включить многоуровневые метки, Вы можете сделать следующее:

    private void EnableMultiLevelLabels(ExcelChart chart)
    {   
        var element = chart.ChartXml.GetElementsByTagName("c:catAx")[0];
        if (element == null)
            return;

        var multiLevelLabelNode = element.AppendChildElementNode("c:noMultiLvlLbl");
        if (multiLevelLabelNode != null)
            multiLevelLabelNode.AppendNodeAttribute("val", "0");
    }

SpreadsheetLight, и он работает внутренне на открытых XML версии. лицензия mit. Отказ от ответственности: я написал SpreadsheetLight.

Comments

    Ничего не найдено.