ZExmlss - библиотека, позволяющая создавать и загружать файлы формата excel 2002/2003 XML (SpreadsheetML / XML Spreadsheet), OpenDocument Format (ODS), Office Open XML (xlsx) БЕЗ использования MS Office или Open Office.
Работает в Lazarus (проверено с Lazarus 1.0.4 и FPC 2.6 под Linux-ом и Windows XP), в Delphi 7, Borland Developer Studio 2005, BDS 2006, CodeGear Delphi 2007, CodeGear RAD Studio 2009 и 2010, Delphi XE и Delphi XE2, в C++ Builder 6.
Лицензия: zlib License
Последняя версия: 0.0.6 от 2013.02.23 (бета).
Сайт разработчика: http://avemey.com/zexmlss/index.php?lang=ruПопробовал использовать в программе по тарификации медицинских учреждений - работает отлично, документ объёмом около 50 страниц сформировался меньше чем за 5 секунд. В отличии от fpSpreadSheet позволяет объединять ячейки. Тестировал в Lazarus SVN версии под Windows XP и OpenSuse 13.1 x64. Единственный замеченный глюк - если документ открывается в LibreOffice, высота строк не растягивается автоматически по содержимому, при открытии файла в Excel всё отображается нормально.
Также доступно на GitHub:
https://github.com/Avemey/zexmlss.git .
Компонент ZColorStringGrid (наследован от TStringGrid) Из-за лени (надоело каждый раз в OnDrawCell писать код для выравнивания текста...) было решено доработать StringGrid для нужного поведения.
Протестировано на Delphi 6-7, Borland Developer Studio 2005, BDS 2006, CodeGear Delphi 2007, CodeGear RAD Studio 2009 и 2010, XE и XE2.
Также заработало на C++ Builder 6 (на более поздних тоже должно). Для Builder-а нужно заменить hpp.
Основные возможности:- Выравнивание текста в ячейке по горизонтали и вертикали
- У каждой ячейки свой "стиль" (цвет фона, шрифт (стиль, цвет), рамка)
- Возможность объединения ячеек
- Многострочные ячейки (не только в фиксированных ячейках)
- Увеличение размера ячейки, если текст не помещается
- Поворот многострочного текста в ячейке (только для TrueType шрифтов)