ZioCrick ha scritto:
con Java riesco a creare un documento .ods tramite la classe
org.jopendocument.dom.spreadsheet.SpreadSheet
ma non riesco a formattare il contenuto delle righe e celle perché devo popolarlo con un DefaultTableModel.
Sì mi ricordo, ne avevamo già parlato
qui dove ti avevo fatto un esempio di "persone" con le righe azzurre/rosa per maschi/femmine.
Le questioni sono due:
1) Settare il background è facile (c'è il metodo diretto sul MutableCell !) mentre settare altri attributi non sembra così facile e/o fattibile. Però devo dire che non avevo "indagato" più di tanto all'epoca di quel mio esempio. Guardando il javadoc e soprattutto i sorgenti di jopendocument (se la dipendenza la prendi con Maven, hai i sorgenti "in linea" in un IDE) molto probabilmente si può scoprire qualcos'altro di utile.
2) Se parti con un *TableModel (qualunque implementazione valida) e lo passi al
createEmpty(TableModel t) di SpreadSheet, è chiaro che la libreria non ha alcun "appiglio" per impostare degli attributi, perché il table model espone solo DATI, non certo stili grafici.
Questo però non significa che non si possa fare (a condizione del 1) sopra, chiaramente). Potresti fare un piccolo strato sw in cui sei tu a scansionare tutti i valori esposti dal table model (ci sono tutte le informazioni per farlo) e poi generare tu le celle nel ods usando, più o meno, quello che ti avevo mostrato io nell'esempio. La cosa da valutare però è: in base a COSA devi applicare gli stili? In generale su tutte le celle? O basandosi sul valore delle celle? O in base ad altri fattori che non sono direttamente collegati al valore di una cella?
Tutto questo cambia ovviamente il modo di realizzare quello strato sw che dicevo poco fa e che dipende anche da quanto vuoi renderlo elegante e riutilizzabile.
ZioCrick ha scritto:
Inoltre non riesco a trovare il modo per creare un documento in formato .odt
nel quale vorrei ovviamente formattare il testo come si fa editando un documento con Libreoffice Write, ovvero impostare vari tipi di font, dimensioni dei caratteri, il bold etc.
Se intendi il .odt cioè il documento stile "word" per intenderci, vedo che ci sono degli stralci di codice:
https://www.jopendocument.org/doc_fromscratch.htm
Vedo che si possono inserire heading, paragraph, quindi la possibilità per farlo c'è di certo. Non ho mai fatto personalmente prove su questa parte di jopendocument.
Se ti serve un esempio, posso provare a metterlo giù nei prossimi giorni.