OpenOffice и .NET
Есть ли .NET API для OpenOffice?
EDIT: есть ли OpenOffice SDK для .NET?
Ответы
Ответ 1
В Novel есть ветвь OOo, которая добавляет моно-возможности, поэтому вы можете использовать эти сборки для скриптинга через .Net внутри OOo. Форматы документов для OOo (кроме Base) - это XML + ресурсы в zip-контейнере. Если вам нужен программный доступ, помимо ручной обработки файлов, лучше всего использовать элемент управления ActiveX с COM Interop. Если вы хотите использовать Base в качестве источника данных в .Net, это почти невозможно, так как это встроенная структура базы данных Java без зрелого порта .net.
Ответ 2
Если у вас установлен OpenOffice, вы можете использовать "OpenOffice SDK" (текущая версия здесь), чтобы управлять этим экземпляром из нескольких сред программирования, включая .NET. Вы можете использовать OpenOffice таким образом, чтобы выполнить множество разных вещей; одним примером является преобразование файлов из одного формата файла в другой. Он аналогичен тому, как вы можете управлять Microsoft Office через COM.
Набор привязок CLI/.NET поставляется с SDK и по умолчанию установлен (пример для SDK v3.0):
C:\Program Files\OpenOffice.org_3.0_SDK\sdk\cli
Я нашел Марка Александра Бэна Создание документа OpenOffice Calc с С#, чтобы быть наиболее простой, практичной, вводной статьей для контроля OpenOffice таким образом.
Связывание CLI в основном представляет собой порт/сопоставление объектной модели, отличной от .NET, поэтому вы захотите проникнуть в такие вещи, как API-интерфейс OpenOffice, не относящийся к .NET Руководство разработчика.
До сих пор основное отличие, которое я обнаружил между связями CLI и другой документацией, - это то, что с привязками CLI вы добавляете объект в новый интерфейс, используя обычный синтаксис .NET.NET, а не с помощью метода UnoRuntime.queryInterface(), Например, вместо
XComponentLoader xComponentLoader =
(XComponentLoader)UnoRuntime.queryInterface(XComponentLoader.class, desktop);
просто используйте
XComponentLoader xComponentLoader = (XComponentLoader)desktop;
Также есть некоторые довольно технические документы о том, как объекты OpenOffice/UNO сопоставляются с .NET-концепциями в связывании с CLI здесь: http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/ProUNO/CLI/CLI_Language_Binding
Ответ 3
Это может помочь:
"AODL - это .net-модуль ODF Инструментарий. Библиотека полностью завершена написанные на чистом С# и могут быть использованы для расширьте свое программное обеспечение на основе .net. поддержка формата OpenDocument. к использовать AODL в своих проектах соответственно программного обеспечения нет необходимости глубокого знания Формат OpenDocument. Это помогите понять, что будет за кулисами и за собственные расширения, но, как упомянуто прежде чем это не будет основополагающим Требование".
Этот модуль был оставлен во время перехода инкубатора Apache, последние официальные бинарные или исходные загрузки недоступны (см. сообщение в новостной группе 1, сообщение в новостной ленте 2, сообщение в новостной группе 3.
Самая последняя бинарная загрузка - v1.2.0.1, доступная внутри старой страницы проекта ADF SourceForge, в то время как, кажется, наиболее недавний исходный код, приводящий к тому, что в Bitbucket (документация и журнал изменений, включенный в исходное дерево, прочитайте v1.3.0, доступна версия fora for no available for noa). . 0) и просто компилируется.
В будущем в новой ODFDOM может быть официальная альтернатива, генератор которой должен поддерживать .NET/С#/etc в один прекрасный день:
Генератор кода ODFDOM используется для создания основных классов для ODFDOM, которые являются типизированным отображением элементов ODF на реальной Java Классы. В будущем мы также планируем создавать ODFDOM, например. С# (.NET ) для других языков программирования с этим генератором.
Ответ 4
В зависимости от ваших потребностей. Большинство форматов документов OpenOffice читаются на XML и могут быть созданы.
Ответ 5
Открытый API форматов документов для .NET Framework
API поддерживает стандарт Open Document Format, определенный в OASIS Open Document Format. ODF.NET позволяет писать приложения для создания, изменения и анализа текстовых документов и электронных таблиц. Поддерживает все версии .NET Framework,.NET Compact Framework и Mono.