Domanda
C'è un'API .NET per OpenOffice?
EDIT: c'è uno SDK per NET OpenOffice
?Soluzione
Novel ha un ramo di OOo che aggiunge funzionalità di mono, in modo da poter utilizzare queste build per lo scripting tramite .Net all'interno di OOo. I formati di documenti per OOo (ad eccezione di Base) è XML + risorse in un contenitore zip. Se avete bisogno di accesso programmatico al di là di manipolazione manuale dei file, la soluzione migliore è quella di utilizzare il controllo ActiveX con interoperabilità COM. Se si desidera utilizzare Base come origine dati in Net, è quasi impossibile, in quanto si tratta di una struttura di database Java incorporato senza una porta .net maturo.
Altri suggerimenti
Se avete installato OpenOffice, quindi è possibile utilizzare il "OpenOffice SDK" ( versione attuale qui ) per controllare tale istanza da diversi ambienti di programmazione, tra cui .NET. È possibile utilizzare OpenOffice questo modo per realizzare un certo numero di cose diverse; Un esempio è la conversione di file da un formato di file ad un altro. E 'analogo a come si può controllare Microsoft Office tramite COM.
Una serie di attacchi CLI / .NET vengono con l'SDK, e sono di default installato in ( esempio per SDK v3.0 ):
C: \ Program Files \ OpenOffice.org_3.0_SDK \ SDK \ cli
Ho trovato di Mark Alexander Bain Creazione di un documento OpenOffice Calc con C # per essere più semplici, hands-on, articolo introduttivo al controllo OpenOffice in quel modo.
Gli attacchi CLI sono per lo più di una porta / mappatura del modello a oggetti non-.NET, quindi ti consigliamo di entrare in cose come il-specifica non-NET OpenOffice API Guida per gli sviluppatori .
Finora la differenza principale che ho trovato tra gli attacchi CLI e l'altra documentazione è che con le associazioni CLI lanci un oggetto a una nuova interfaccia utilizzando la normale sintassi dei NET fusione, piuttosto che con l'UnoRuntime.queryInterface () metodo . Ad esempio, invece di
XComponentLoader xComponentLoader =
(XComponentLoader)UnoRuntime.queryInterface(XComponentLoader.class, desktop);
basta usare
XComponentLoader xComponentLoader = (XComponentLoader)desktop;
Ci sono anche alcuni documenti piuttosto tecnici di come la roba / ONU OpenOffice viene mappato su concetti .NET nella CLI legame qui: http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/ProUNO/CLI/CLI_Language_Binding
"AODL è il modulo .net del ODF Kit di strumenti. La biblioteca è completamente scritto in puro C # e può essere utilizzato per estendere il software basato NET per supportare il formato OpenDocument. Per utilizzare AODL all'interno dei vostri progetti rispettivamente, il software non è necessario di una profonda knowlegde della OpenDocument Format stesso. Sarebbe essere utile per capire cosa sta succedendo dietro le quinte e per la scrittura proprie estensioni, ma come detto prima che questo non è un elemento fondamentale requisito ".
Questo modulo è stato abbandonato durante la transizione incubatore Apache, download recenti binari o fonti ufficiali non sono disponibili (vedi newsgroup dopo 1 , newsgroup postale 2 , messaggio di newsgroup 3 .
Il più recente binary scaricare è v1.2.0.1 disponibile all'interno della vecchio progetto ADL SourceForge pagina , mentre quello che sembra essere il codice più recente sorgente conseguente (abbandonata troppo) forcella è disponibile sul Bitbucket (la documentazione e changelog compresi nel source tree lettura v1.3.0.0) e compila bene.
In futuro ci potrebbe essere un'alternativa ufficiale nel nuovo ODFDOM, il cui generatore si suppone per supportare .NET / C # / etc un giorno:
Il generatore di codice ODFDOM viene utilizzato per generare le classi di base per ODFDOM che sono una mappatura tipizzato degli elementi ODF su Java vero e proprio Classi. Per il futuro abbiamo anche in programma di produrre ODFDOM esempio C # (.NET ) Per gli altri linguaggi di programmazione con questo generatore.
dipende dalle vostre esigenze. La maggior parte dei formati di documento OpenOffice sono XML leggibili, e creabile.
Open Document Format API per .NET Framework
Il supporto API Open Document Format tipo definita nel formato OASIS Open Document . ODF .NET consente di scrivere applicazioni per creare, modificare e analizzare i documenti di testo e fogli di calcolo. Supporta tutte le versioni di .NET Framework, .NET Compact Framework e Mono.