Tips und Lösungen


Auch LaTeX ist nicht perfekt...

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.

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).

Fehlermeldung 131 im Bild.

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, oft auch an graphicx-Paket, die Grafiken werden also ebenfalls im draft-Modus (als Umrandungen) gezeichnet.

\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 werden soll. 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 für alle *-Formen von Gliederungsbefehlen.