Существуют ли OpenOffice.org компоненты экспорта для Delphi (не OLE)?

StackOverflow https://stackoverflow.com/questions/897873

Вопрос

Для обмена документами я хотел бы сгенерировать OpenOffice.org текстовые документы и электронные таблицы.Пока что я нашел компоненты экспорта, для которых требуется установка OpenOffice с использованием OLE.

Доступны ли уже компоненты Delphi, которые могут записывать собственные файлы для OpenOffice.org Writer или OpenOffice.org Calc?

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

Решение

Это зависит от того, насколько сложны ваши документы и сколько усилий вы хотите вложить.

OpenOffice.org документы (начиная с версии 2 OO.org) представляют собой файлы в Формат OpenDocument, в основном архивированные каталоги с документированной структурой, содержащие различные XML-файлы и файлы поддержки.Вы можете использовать, например, команду "Открыть внутри" 7-Застежка-молния перемещаться по файлам, как по каталогу.

Это дает вам, по крайней мере, следующие варианты:

  • Напишите код для вывода документов самостоятельно, потоковых классов Delphi и поддержки сжатия должно быть достаточно.Очевидно, что это самый трудный способ, но тогда у вас все будет под вашим контролем.

  • Сохраняйте минимальные документы в виде файлов шаблонов и добавляйте их в свое приложение в качестве файлов внешней поддержки или даже в качестве встроенных ресурсов.Когда необходимо записать файл, вы копируете шаблон и редактируете content.xml файл в корневом каталоге.Это должно быть намного проще, чем я, вероятно, пошел бы, чтобы создать, например, простой файл электронной таблицы с несколькими листами и столбцами данных.

  • Если у вас уже есть лицензия или вы не возражаете заплатить за нее, Быстрый отчет VCL поддерживает "Формат открытого документа для экспорта приложений Office (OASIS), электронных таблиц (ods) и текста (odt)".Возможно, существуют и другие решения для создания отчетов, но FastReport - это то, в чем я уверен.

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

Компонент fpspreadsheet от FPC / Lazarus может напрямую записывать старые форматы Excel, и OOO может их открывать.Если вам нужны электронные таблицы, а не текстовые документы, можно посмотреть, можно ли их перенести на Delphi.

В Lazarus я использую zexmlss компонент для экспорта в ODS.Этот компонент для lazarus, delphi и builder.Только для электронных таблиц.Формулы работают нормально.

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