Seite 1 von 1

Rahmen um Tabellen per UNO-API zuverlässig setzen

Verfasst: Di 15. Jul 2014, 15:19
von OliverL
Hallo,
ich verwende LibreOffice im headless-Modus als eine Art Report-Generator (schon seit OpenOffice 2.0). Dabei wird aus einem Java-Programm heraus mittels UNO-API ein ODT-Dokument als Vorlage geladen und dann über das UNO-API HTML-Texte und Tabellen importiert, um so den Report mit Inhalten zu füllen.

Funktioniert alles zuverlässig, nur leider werden die Rahmen von aus HTML importierten Tabellen unschön dargestellt (breit, grau, Gitternetz und Umrahmung unterschiedlich dick (in LO)), und auch die HTML Style/CSS-Angaben werden nicht wirklich beachtet.

Daher verfolge ich aktuell den Ansatz, dass ich nach Aufbereitung des Dokuments (Vorlage + importiertes HTML) alle Tabellen durchiteriere und dann mittels TableBorder/TableBorder2 versuche, die Rahmen selbst passend umzugestalten.
Das funktioniert "im Kleinen" (d.h. mit vielen kurzen Tabellen (z.B. 20 Zeilen/Tabelle)) sehr gut. Wenn längere, über mehrere Seiten umbrechende Tabellen dabei sind kommt es (reproduzierbar) vor, dass einige - aber nicht alle - Tabellen die geänderten Rahmen nicht oder nur teilweise annehmen...

Schematisch:
Dokument -> XTextTablesSupplier -> XNameAccess => alle Tabellennamen
Schleife über alle Tabellennamen:
XTextTable(name) -> XPropertySet -> get/set (TableBorder, TableBorder2)

Kennt jemand das Phänomen oder besser, eine Lösung?

Besten Dank für Infos & Tipps!
Oliver

Re: Rahmen um Tabellen per UNO-API zuverlässig setzen

Verfasst: Di 15. Jul 2014, 15:46
von lorbass
Hier im Bereich LibreOffice Writer darfst du wohl kaum Antworten auf dein Anliegen erhalten. Wende dich doch bitte an den Bereich LibreOffice Programmierung, wo »API«, »CSS« usw. keine Fremdworte sind.

Gruß
lorbass

Re: Rahmen um Tabellen per UNO-API zuverlässig setzen

Verfasst: Di 15. Jul 2014, 15:56
von OliverL
ok, danke für die schnelle Rückmeldung.

Gruss,
Oliver

Re: Rahmen um Tabellen per UNO-API zuverlässig setzen

Verfasst: Di 15. Jul 2014, 16:00
von lorbass
Der geneigte Helfer antworte dann also bitte hier → http://www.libreoffice-forum.de/viewtop ... 12&t=13793 :D

Gruß
lorbass