Tabellen

Tabellen verursachen regelmäßig Probleme, wenn Sie mit vielen Formatvorlagen geschmückt sind oder eine Zelle weiteren Tabellen enthält. Solche Konstrukte in ein einheitliches Aussehen zu bringen, erweist sich als schwierige und zeitaufwendige Aufgabe. Da fällt es oft leichter, wenn Sie den Autor auffordern, die Tabelle mit Calc statt mit Writer zu erstellen.

Dies hat zwei Vorteile: Zum einen legt der Autor nur den Inhalt fest, die Formatierung ignorieren Sie einfach. Zum anderen ermöglicht die Applikation sehr einfach, in Tabellen zu rechnen: Es stehen alle Möglichkeiten von Calc bereit, eine Writer-Tabelle muss da passen.

Die Calc-Tabelle exportieren Sie in eine CSV-Datei, wobei alle Formate verloren gehen. Anschließend wandeln Sie das CSV mit einem Editor wie Sed oder mit einem Ant-Task in eine LaTeX-Tabelle um. Der Task calc2csv ruft dabei LibreOffice Calc auf und exportiert die Tabelle im CSV-Format (Listing 8). Dabei das Komma (44) als Spaltentrenner, für Zeichenketten kommt das doppelte Anführungszeichen (34) zum Einsatz. Mit terminateooo wird LibreOffice wieder beendet. Anschließend lässt sich die CSV-Datei in eine LaTeX-Tabelle umwandeln – das Ergebnis zeigt Listing 9.

Listing 8

<calc2csv srcfile="${odt.dir}/tab_bsp.ods"
  destfile="${target.dir}/tab_bsp.csv"
  ooopath="/usr/lib/openoffice/program"
  csvoption="44,34,UTF8" />
<terminateooo />
<csv2tabular srcfile="${target.dir}/tab_bsp.csv"
  usesrcfile="true"
  workdir="${target.dir}"
  head="true"
  firstlinehead="true"
  headcol="\textbf"
  mode="tabular"
  columntypes="|l|r|" />

Listing 9

\begin{tabular}{|l|r|}\hline
\textbf{Peter} & \textbf{13} \\\hline
Uschi & 23 \\\hline
 & 36 \\
\hline
\end{tabular}
\endinput

Um diese Tabelle einzubinden, markieren Sie sie im Writer-Dokument mit einer Textzeile. Im Beispiel sieht diese wie folgt aus:

TABELLE::Tabellenbeschriftung::Datei::

Diese Zeile verwenden Sie später in dem zweistufigen Makro input (Listing 10). Beim Export ersetzt es Sonderzeichen wie den Unterstrich entsprechend. Enthält der Dateiname der CSV-Datei einen Unterstrich, so machen Sie die ungewollte Ersetzung mit sedlatex wieder rückgängig. Anschließend wandeln Sie mit Sed die Markierung in entsprechende LaTeX-Makros um. Hier im Beispiel lautet der Name des Makros InputIfFileExists.

Listing 10

<sedlatex srcfile="${odt.dir}/dok_tab.tex"
  destfile="${target.dir}/dok_tab.tmp">
  <configsedlatex start="TABELLE" sep="::"
   group="2" search="\_" replace="_" />
</sedlatex>
<sed srcfile="${target.dir}/dok_tab.tmp"
  destfile="${target.dir}/dok_tab.tex">
  <configpair one="TABELLE::(.*?)::(.*?)::"
   two="\\InputIfFileExists{$2.tex}{}{Tabelle nicht gefunden!}\\n" />
</sed>

Möchten Sie die Tabelle lieber in einer Gleitumgebung mitsamt Beschriftung sehen, so hilft der Parameter aus Listing 11.

Listing 11

two="\\begin{table}\\caption{$1}\\InputIfFileExists{$2.tex}{}{Tabelle nicht gefunden!}\\end{table}"

Fazit

Nach dem Umwandeln in LaTeX dürfen Sie die Datei beliebig ändern. Beachten Sie dabei aber, dass Sie alle manuellen Änderungen in der LaTeX-Datei nachpflegen müssen, wenn der Autor am Writer-Dokument Änderungen vornimmt.

Mit etwas Experimentierfreude wandeln Sie selbst komplexere Writer-Dokumente im Handumdrehen automatisch nach LaTeX um. Damit eignet sich Writer als komfortablen Editor für das Satzsystem. Im W2L-Handbuch finden Sie noch weitere interessante Möglichkeiten – ein Blick lohnt sich auf jeden Fall. 

Infos

[1] Writer2LaTeX-Paket: http://writer2latex.sourceforge.net/

[2] Apache-Ant-Erweiterung Ant-Worker http://sourceforge.net/projects/antworker/

[3] XeTeX: Daniel Stender, "Weltsprache", LU 11/2008, S. 76, http://www.linux-community.de/17025

[4] Luatex: http://www.luatex.org

[5] Parameter von W2L: http://writer2latex.sourceforge.net/doc1.2/user-manual14.html#toc27

Der Autor

Michael Niedermair schreibt als Lehrer an der Münchner IT-Schule viel – vor allem Unterrichtsskripte zusammen mit Kollegen, die LaTeX nicht verwenden. Ansonsten programmiert er viel mit Java und bereitet seine Schüler auf die LPI-Prüfung vor.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 5 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

Kommentare

Infos zur Publikation

title_2015_02

Digitale Ausgabe: Preis € 5,49
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 2 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

Rootpasswort
Jutta Naumann, 29.01.2015 09:14, 1 Antworten
Ich habe OpenSuse 13.2 installiert und leider nur das Systempasswort eingerichtet. Um Änderungen,...
Neue SuSE-Literatur
Roland Welcker, 14.01.2015 14:10, 1 Antworten
Verehrte Linux-Freunde, seit Hans-Georg Essers Buch "LINUX" und Stefanie Teufels "Jetzt lerne ich...
DVD abspielen unter openSUSE 13.1
Michael Pfaffe, 12.01.2015 11:48, 6 Antworten
Hallo Linuxer, Bisher habe ich meine DVD´s mit linDVD unter openSUSE abgespielt. Mit der Versi...
Kontrollleiste SuSE 12.3 gestalten
Roland Welcker, 31.12.2014 14:06, 1 Antworten
Wie bekomme ich das Icon eines beliebigen Programms (aktuell DUDEN) in die Kontrollleiste und kan...
flash-player
roland reiner, 27.12.2014 15:24, 7 Antworten
Mein Flashplayer funktioniert nicht mehr-Plug in wird nicht mehr unterstütz,auch über google chro...