Lx-Office unterstützt die Verwendung von Vorlagen im
OpenDocument-Format, wie es OpenOffice.org ab Version 2
erzeugt. Lx-Office kann dabei sowohl neue OpenDocument-Dokumente als
auch aus diesen direkt PDF-Dateien erzeugen. Um die Unterstützung von
OpenDocument-Vorlagen zu aktivieren muss in der Datei
config/lx_office.conf
die Variable opendocument
im
Abschnitt print_templates
auf ‘1’ stehen. Dieses ist die
Standardeinstellung.
Weiterhin muss in der Datei config/lx_office.conf
die Variable
dbcharset
im Abschnitt system
auf die Zeichenkodierung
gesetzt werden, die auch bei der Speicherung der Daten in der
Datenbank verwendet wird. Diese ist in den meisten Fällen "UTF-8".
Während die Erzeugung von reinen OpenDocument-Dateien keinerlei weitere Software benötigt, wird zur Umwandlung dieser Dateien in PDF OpenOffice.org benötigt. Soll dieses Feature genutzt werden, so muss neben OpenOffice.org ab Version 2 auch der “X virtual frame buffer” (xvfb) installiert werden. Bei Debian ist er im Paket “xvfb” enthalten. Andere Distributionen enthalten ihn in anderen Paketen.
Nach der Installation müssen in der Datei config/lx_config.conf
zwei weitere Variablen angepasst werden: openofficeorg_writer
muss den vollständigen Pfad zur OpenOffice.org Writer-Anwendung
enthalten. xvfb
muss den Pfad zum “X virtual frame buffer”
enthalten. Beide stehen im Abschnitt applications
.
Zusätzlich gibt es zwei verschiedene Arten, wie Lx-Office mit
OpenOffice kommuniziert. Die erste Variante, die benutzt wird, wenn
die Variable $openofficeorg_daemon
gesetzt ist, startet ein
OpenOffice, das auch nach der Umwandlung des Dokumentes gestartet
bleibt. Bei weiteren Umwandlungen wird dann diese laufende Instanz
benutzt. Der Vorteil ist, dass die Zeit zur Umwandlung deutlich
reduziert wird, weil nicht für jedes Dokument ein OpenOffice gestartet
werden muss. Der Nachteil ist, dass diese Methode Python und die
Python-UNO-Bindings benötigt, die Bestandteil von OpenOffice 2 sind.
Ist $openofficeorg_daemon
nicht gesetzt, so wird für jedes
Dokument OpenOffice neu gestartet und die Konvertierung mit Hilfe
eines Makros durchgeführt. Dieses Makro muss in der Dokumentenvorlage
enthalten sein und “Standard.Conversion.ConvertSelfToPDF()”
heißen. Die Beispielvorlage ‘templates/German-invoice.odt’
enthält ein solches Makro, das in jeder anderen Dokumentenvorlage
ebenfalls enthalten sein muss.
Als letztes muss herausgefunden werden, welchen Namen OpenOffice.org
Writer dem Verzeichnis mit den Benutzereinstellungen gibt. Unter
Debian ist dies momentan ~/.openoffice.org2
. Sollte der Name
bei Ihrer OpenOffice.org-Installation anders sein, so muss das
Verzeichnis users/.openoffice.org2
entsprechend umbenannt
werden. Ist der Name z.B. einfach nur .openoffice
, so wäre
folgender Befehl auszuführen:
mv users/.openoffice.org2 users/.openoffice
Dieses Verzeichnis, wie auch das komplette users
-Verzeichnis,
muss vom Webserver beschreibbar sein. Dieses wurde in Schritt
Installation des Programmpakets
oben bereits erledigt, kann
aber erneut überprüft werden, wenn die Konvertierung nach PDF
fehlschlägt.