Tips und Lösungen


Auch LaTeX ist nicht perfekt...
Ekkart Kleinod  • 

Auf dieser Seite sammele ich Tips und Lösungen für Probleme rund um den Textsatz mit LaTeX. Die meisten Dinge sind mir nicht selbst eingefallen, sondern aus dem Internet zusammengesammelt.

Ein sehr allgemeiner Tip vorweg: LaTeX ist nicht einfach, gibt oft verwirrende Fehlermeldungen und Tabellen sind vom Teufel. Es liegt nicht an Euch :)

PDF nicht im Adobe Reader öffenbar

Problem: Ein pdf wurde mit pdflatex unter Linux erzeugt und lässt sich nicht im Adobe Reader öffnen (der 131-Fehler).

Fehlermeldung:

Beim Verarbeiten der Seite ist ein Fehler aufgetreten. Beim Lesen dieses Dokuments ist ein Problem aufgetreten (131).

Screenshot der Fehlermeldung 131.

Problemanalyse: Das scheint ein Problem mit eingebundenen Grafiken zu sein, dort wird wohl ein Zeichen falsch deklariert, was den Adobe Reader aus dem Gleichgewicht bringt. Vermutlich.

Lösung: Zum Glück gibt es mehrere Lösungen dafür, alle nicht wirklich schön. Entweder man setzt die Kompression für Bilder auf 0 oder man verringert den PDF-Level auf 1.4. Beides fügt man vor \documentclass ein.

\pdfobjcompresslevel=0
\documentclass...

oder

\pdfminorversion=4
\documentclass...

Quellen: Wird im Netz häufig nachgefragt, Lösungen werden gegeben, das Problem geht anscheinend nicht weg. Beispiele:

Das C++-Symbol

Das C++-Symbol sieht mit der Zeichenfolge "C++" nicht gut aus. Besseres Aussehen verspricht folgende Befehlsfolge:

\newcommand{\Cpp}{%
    {%
        C%
        \settoheight{\dimen0}{C}%
        \settowidth{\dimen1}{{\ensuremath{\scriptstyle++}}}%
        \parbox[b][\dimen0][c]{\dimen1}{\ensuremath{\scriptstyle++}}%
    }%
}

Schriftgrößen

LaTeX kennt standardmäßig die Schriftgrößen:

  • \tiny
  • \scriptsize
  • \footnotesize
  • \small
  • \normalsize
  • \large
  • \Large
  • \LARGE
  • \huge
  • \Huge

Die jeweilige Schriftgröße wird durch den obigen Befehl eingeschaltet und gilt bis zum Ende der Gruppe. Das Ende der Gruppe ist oft schwierig zu bestimmen, daher empfiehlt es sich, selbst den Wirkungsbereich der Umschaltung durch Gruppierung durch Klammerung zu bestimmen:

{<groesse> ...}

Beispiel:

{\huge Großer Text}

Alternativ kann eine \begin-\end-Notation verwendet werden. Dabei sind die Größen obiger Auflistung zu entnehmen und ohne "\" einzutragen:

\begin{<groesse>}
    ...
\end{<groesse>}

Beispiel:

\begin{huge}
    Großer Text
\end{huge}

Volle Boxen erkennen

Volle Boxen können im Dokument gekennzeichnet werden. Dazu ist einfach die Option "draft" dem "documentclass"-Befehl zu übergeben. Es ist zu beachten, dass diese Option an alle Pakete weitergegeben wird, also auch an das graphicx-Paket, das daraufhin die Grafiken im draft-Modus (als Umrandungen) zeichnet.

\documentclass[draft]{...}
 ...

\part* einsetzen

Der "\part*"-Befehl wird eingesetzt, um Teile ohne Gliederungsnummer zu setzen. Leider werden dabei auch kein Inhaltsverzeichniseintrag erzeugt und die Kopfzeile nicht ordentlich angepasst. Das ist zum Beispiel beim Anhang nicht toll, da dieser durch "Anhang" eingeleitet werden soll, ohne dass dort eine Gliederungsnummer erzeugt wird. Also müssen Inhaltsverzeichniseintrag und Kopfzeileninhalt manuell eingestellt werden:

\part*{Anhang} % Anhang als Teil ohne Nummerierung
\sectionmark{} % Kopfzeile leer lassen
\addcontentsline{toc}{part}{Anhang} % Inhaltsverzeichnis füllen

Gleiches gilt analog für alle *-Formen von Gliederungsbefehlen.