Jump to content

Strumenti per la generazione di documenti ODF

From The Document Foundation Wiki
This page is a translated version of the page Documentation/ODF documents generation tools and the translation is 100% complete.

Risorse di sviluppo

Portale Sviluppo di TDF: https://wiki.documentfoundation.org/Development

Per informazioni sui file ODF, potete leggere l'articolo sul markup ODF.

Strumenti per la generazione di documenti ODF

Python

odfdo
odfpy
odsgenerator
odpdown

Java

ODF Toolkit

Progetto ufficiale di TDF in collaborazione con Apache

PHP

PHPOffice

Progetto di terze parti, mantenuto attivamente. Lo sviluppatore principale (Franck Lefevre) ha contattato la comunità francese di LibreOffice tramite l'account Twitter al fine di porre domande ad un guru del formato ODF. Gli è stato consigliato di contattare Svante Schubert, che lavora alla CIB.

OpenTBS

Progetto attivo, plugin per TinyButStrong, ma utilizzabile anche senza. Molto semplice da usare, senza installazione, sono necessari solo i file php che contengono le classi. Si basa su modelli definiti dall'utente.

JavaScript

WebODF

Libreria in JavaScript per visualizzare un documento ODF usando HTML e CSS. Inizialmente sviluppata da KO GmbH.

XmlRPC

Nexedi cloudooo

Http

NDCODFAPI Project

LibreOffice

È possibile generare dei documenti ODF usando LibreOffice su di un server. Un processo attivo di LibreOffice è in grado di eseguire una macro, la quale può generare uno o più documenti, ad esempio unendone alcuni. Per eseguire una macro su di un Linux senza GUI digitate:

   libreoffice --nofirststartwizard --norestore --headless --invisible  "macro:///bibliothèque.module.macro(arg1,arg2...)"

Metodo generico, basato sui pacchetti standard di Python

Il formato standard ODF consiste nella creazione di un file compresso (in ZIP), che contiene diversi dati, la maggior parte in formato XML. Non c'è motivo di scartare l'utilizzo di strumenti generici per la gestione dei file XML. Naturalmente, questo presuppone che la persona che scrive lo script conosca cosa sono l'XML, i suoi alberi, le ramificazioni, i nodi, gli attributi, ecc. Un buon metodo di lavoro è quello di partire da un file di modello, che già contiene le parti fisse del documento da generare, con gli stili corretti ed una struttura adeguata, quindi affiancarlo con la creazione di un piccolo script che recuperi altrove i dati ed usi l'albero DOM del modello per generare un documento elaborato. Perciò si può facilmente separare la forma (nel modello) dal contenuto (i dati trattati).

il pacchetto zipfile

Il pacchetto zipfile di Python permette di scompattare i file .odt, .ods, .odg, ecc. e di accedere al loro contenuto, in particolare al file content.xml che definisce il contenuto del documento, la cartella Pictures che contiene le immagini, ecc.

il pacchetto xml.dom.minidom

Con la classe minidom è semplice aprire il file content.xml ed analizzarne il contenuto in forma e con la sintassi di un albero (DOM). Avendo a disposizione questo albero, potete trovare una determinata diramazione, cancellarla o modificarla, oppure copiarla ed agganciarla ad una diramazione precedente o successiva dell'albero.