Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!aanews.merit.edu!news.cc.uic.edu!news.uchicago.edu!yellow.newsread.com!netaxs.com!newsread.com!newsfeed00.sul.t-online.de!t-online.de!news-lei1.dfn.de!news-ham1.dfn.de!news.uni-hamburg.de!not-for-mail
From: dantefaq@dante.de (DE-TeX-FAQ-Maintainer)
Newsgroups: de.comp.text.tex,de.answers,news.answers
Subject: TeX, LaTeX, DANTE e.V.: FAQ - Fragen und Antworten (Part 6 of 11)
Supersedes: <de-tex-faq-6-1020876881@dante.de>
Followup-To: de.comp.text.tex
Date: 19 Sep 2003 14:43:17 +0200
Organization: DANTE, Deutschsprachige Anwendervereinigung TeX e.V.
Lines: 1088
Approved: news-answers-request@MIT.EDU
Distribution: world
Expires: 03 Nov 2003 13:43:13 MET
Message-ID: <de-tex-faq-6-1063975393@dante.de>
References: <de-tex-faq-1-1063975393@dante.de>
Reply-To: dantefaq@dante.de (DE-TeX-FAQ-Maintainer)
NNTP-Posting-Host: sun.dante.de
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: rzsun03.rrz.uni-hamburg.de 1063975397 890 134.100.9.52 (19 Sep 2003 12:43:17 GMT)
X-Complaints-To: usenet@news.uni-hamburg.de
NNTP-Posting-Date: 19 Sep 2003 12:43:17 GMT
Summary: This posting contains a list of Frequently Asked Questions
         (and their answers) about the typesetting system TeX and
         about DANTE e.V., the german-speaking TeX users group.
         It is in German and uses the ISO Latin-1 character set.
Keywords: FAQ TYPESETTING TeX USERGROUP DANTE
Xref: senator-bedfellow.mit.edu de.comp.text.tex:117404 de.answers:9381 news.answers:258270

Posted-By: auto-faq 3.3 (Perl 5.008)
Archive-name: de-tex-faq/part6
Posting-Frequency: monthly
Copyright-Notice: siehe Abschnitt 1.1/see Section 1.1
URL: http://www.dante.de/faq/de-tex-faq/

--- DE-TeX-FAQ Beginn Teil 6 ---



   Fragen und Antworten (FAQ) �ber das Textsatzsystem TeX und DANTE,
             Deutschsprachige Anwendervereinigung TeX e.V.


            Bernd Raichle, Rolf Niepraschk und Thomas Hafner


                     Version 72 vom September 2003

------------------------------------------------------------------------


6 TeX, LaTeX, Makros etc. (II)


6.1 Abbildungen und Tafeln


6.1.1 Wieso werden die meisten meiner Abbildungen an das Ende des
Kapitels oder Dokuments verschoben?

Das optionale Argument der `figure'- oder `table'-Umgebung _schr�nkt_
die Plazierungsm�glichkeiten auf die angegebenen Orte ein. Mit dem
optionalen Argument gibt man also _nicht_, wie oft f�lschlich geglaubt
und weiterverbreitet wird, die Plazierung f�r weitere Orte an. Deshalb
nie Plazierungsangaben nur auf [h] einschr�nken, sondern mindestens
einen weiteren Ort mit angeben! Grund: Kann die Abbildung nicht `h'ier
plaziert werden, darf sie nirgendwo anders gesetzt werden und wird nach
hinten an das Ende des Kapitels bzw. des Dokuments geschoben. Da LaTeX
die Reihenfolge der Abbildungen bzw. der Tafeln nicht ver�ndert, werden
alle nachfolgenden Abbildungen bzw. Tafeln mit dieser nicht plazierbaren
Abbildung oder Tafel nach hinten verschoben. Genau dasselbe kann
passieren, wenn die Plazierungsbeschr�nkung mit [p] angegeben wird, das
Bild kleiner als \floatpagefraction ist und das n�chste Bild nicht
zusammen mit diesem auf eine Seite pa�t. Ebenso bei einer Beschr�nkung
auf [t] und einem Bild, das gr��er als \topfraction ist, dto. f�r [b]
und \bottomfraction.
Tip: Lassen Sie zu Beginn das optionale Argument der `figure'- oder
`table'-Umgebung weg - es ist nicht ohne Grund ein _optionales_ Argument
dieser Umgebungen! F�gen Sie sp�ter f�r eine Endfassung Ihres Dokuments
nur an den Stellen ein optionales Argument mit
Plazierungseinschr�nkungen ein, wenn z.B. eine bestimmte Abbildung oder
Tafel auf einer eigenen Seite oder auf einer Seite oben erscheinen
sollte.
Weitere Hinweise finden Sie in

* Axel Reichert: ``Gleitobjekte - die richtige Schmierung''
  CTAN: info/german/gleitobjekte/
* Axel Reichert: ``Satz von Tabellen''
  CTAN: info/german/tabsatz/
* Piet van Oostrum: ``Floats in LaTeX''
  http://www.cs.ruu.nl/~piet/floats/


6.1.2 Wie kann ich die Default-Plazierungseinschr�nkungen �ndern? Ich
m�chte meine Abbildungen auch `h'ier plazieren, ohne jedesmal das
optionale Argument angeben zu m�ssen.

In LaTeX werden diese Angaben, die sogenannten `float placement
specifier' f�r die `figure'- und `table'-Umgebungen, in den Makros
\fps@figure und \fps@table abgelegt. Durch die Redefinitionen

  \renewcommand{\fps@figure}{htbp}
  \renewcommand{\fps@table}{htbp}

(diese Zeilen mit \makeatletter ... \makeatother klammern oder in eine
sty-Datei schreiben, siehe auch Frage 8.5.1) f�gt man noch die
`h'ier-Plazierung hinzu.
Die Standard-LaTeX-Klassen setzen die Default-Plazierungen auf `tbp',
untersagen also die `h'ier-Plazierung einer Abbildung bzw. Tafel. Dies
ist in den meisten F�llen auch sinnvoll, da Abbildungen und Tafeln nur
dazu dienen, die Aussagen im Text durch beispielsweise eine
anschaulichere Darstellung oder kompakte �bersicht zu unterst�tzen. Die
Abbildung oder Tafel ist damit _nicht_ integraler Bestandteil des
Textes, sondern ein dem Text noch zus�tzlich zugeordneter Bestandteil
des Dokuments. Daher sollten diese den Text nicht unterbrechen, was eine
`h'ier-Plazierung zweifellos tun w�rde. Somit ist der Default `tbp' in
den meisten F�llen sinnvoll.

6.1.3 Wie mu� ich die `float'-Parameter �ndern, so da� die Abbildungen
und Tafeln g�nstiger innerhalb eines Abschnitts verteilt werden?

Der Plazierungsalgorithmus von LaTeX erledigt diese Aufgabe eigentlich
sehr gut, wenn man einmal selbst durchzuspielen versucht, wohin man
selbst unter den gegebenen Bedingungen und Wechselwirkungen eine
Abbildung oder eine Tafel hinsetzen bzw. schieben w�rde. Ist man mit dem
Ergebnis dennoch nicht ganz zufrieden, kann man einmal folgendes
probieren:
Zuerst sollte man die Plazierungsbeschr�nkungen an allen `figure'- und
`table'-Umgebungen entfernen. Anschlie�end kann man die Parameter des
Plazierungsalgorithmus �ndern:
Eine oder mehrere Abbildungen kommen erst auf eine eigene Seite, eine
sogenannte `float page', wenn diese mindestens 60% der Seite einnehmen.
Damit gibt es weniger `float pages', die nur halbvoll sind.
Empfehlenswert ist ein Wert zwischen 50% und 80%, je nachdem wie viele
Abbildungen existieren, wie gro� und wie unterschiedlich gro� diese
Abbildungen sind.

  \renewcommand{\floatpagefraction}{.6}% vorher: .5

Von einer Seite mu� neben den Abbildungen, die `h'ere, `t'op und
`b'ottom plaziert werden, noch mindestens 15% Text erscheinen. Diesen
Wert sollte man nicht zu klein w�hlen, um nicht nur Seiten zu erzeugen,
bei denen man den Text suchen mu�. Bei vielen Bildern lieber den Wert
von \floatpagefraction kleiner w�hlen. Empfehlenswert ist ein Wert
zwischen 10% und 30%.

  \renewcommand{\textfraction}{.15} % vorher: .2

Maximaler Anteil der Seite, die f�r Abbildungen, die `t'op bzw. `b'ottom
plaziert werden, verwendet werden darf. Diese Werte sollte man nicht zu
gro� w�hlen, bei vielen Abbildungen lieber den Wert von
\floatpagefraction kleiner w�hlen. Insbesondere \bottomfraction sollte
man klein halten, da Abbildungen gew�hnlich auf einer Seite oben
vermutet werden. Empfehlenswert sind Werte zwischen 50% und 85% f�r
\topfraction und 20% bis 50% f�r \bottomfraction. Einer dieser beiden
Werte sollte stets gr��er als \floatpagefraction sein! (\topfraction
sollte nie auf 1.0, \textfraction nie auf 0.0 gesetzt werden!)

  \renewcommand{\topfraction}{.8}     % vorher: .7
  \renewcommand{\bottomfraction}{.5}  % vorher: .3

Maximale Anzahl der Abbildungen und Tafeln, die auf einer Seite `t'op
bzw. `b'ottom bzw. insgesamt auf der Seite plaziert werden. Hat man
viele kleine Abbildungen sollte man diese Werte erh�hen. Will man
Abbildungen m�glichst auf eine `float page' setzen, sollte man
`topnumber' und `bottomnumber' auf 0 setzen und \floatpagefraction bis
auf 0.01 erniedrigen.

  \setcounter{topnumber}{3} % vorher: 2
  \setcounter{bottomnumber}{1} % vorher: 1
  \setcounter{totalnumber}{5} % vorher: 3

Im zweispaltigen Textsatz k�nnen Abbildungen und Tafeln nur oben auf der
Seite plaziert werden, so da� es hierf�r nur zwei weitere Parameter
gibt, die den Parametern \floatpagefraction und \topfraction f�r
einspaltigen Satz entsprechen. Werden Abbildungen oben plaziert, so
k�nnen Abbildungen und Tafeln �ber beide Spalten maximal \dbltopfraction
Platz einnehmen. Schlie�lich gibt \dblfloatpagefraction eine Untergrenze
an, ab der erst eine eigene `float page' probiert wird.

  \renewcommand{\dbltopfraction}{.8} % vorher: .7
  \renewcommand{\dblfloatpagefraction}{.6}% vorher: .5

Nachdem man mit den ge�nderten Plazierungsparametern ein
zufriedenstellendes Ergebnis erzielt hat, kann man durch gezielten
Einsatz des optionalen Arguments der `figure'- bzw. `table'-Umgebung
einzelne ung�nstig plazierte Abbildungen und Tafeln entsprechend
verschieben. Hierbei sollte man nur die nicht erw�nschte Plazierung
entfernen, also z.B. [bp] angeben, falls eine `t'op-Plazierung ung�nstig
ist.
Die Bedeutung dieser Parameter wird anschaulich in bildlicher Form in
dem Artikel `The layouts package: User manual' (`layman') von Peter R.
Wilson beschrieben. Die f�r die verwendete Dokumentenklasse geltenden
Werte k�nnen mit dem zugeh�rigen LaTeX-Paket `layouts' angezeigt und
einfach testweise ge�ndert werden. `layouts' zeigt dar�berhinaus auch
viele weitere f�r das Layout eines Dokumentes wichtigen Parameter an.

layouts:  CTAN: macros/latex/contrib/layouts
layman:   CTAN: macros/latex/contrib/layouts/layman.tex
 


6.1.4 Wie kann ich die Fehlermeldung `! LaTeX Error: Too many
unprocessed floats.' vermeiden?

LaTeX reserviert f�r alle `floats', also die Flie�umgebungen `figure'-
und `table'-Umgebungen, eines Dokuments 18 sogenannte
Insertion-Registertupel. Wenn eine Flie�umgebung nicht sofort auf eine
Seite plaziert werden kann, wird es in eines dieser Register
zwischengespeichert. M�ssen mehr als 18 Flie�umgebungen
zwischengespeichert werde, erh�lt man diese Fehlermeldung. Es gibt vier
M�glichkeiten, wieso dies geschieht:

  1. Meist stehen die optionalen Argumente der `figure'- oder
     `table'-Umgebung im Widerspruch zu den Plazierungsparametern oder
     letztere sind zu restriktiv eingestellt. Beispielsweise kann eine
     `figure', die h�her als der Parameter \topfraction ist und aufgrund
     des optionalen Arguments [t] nur oben plaziert werden darf, nicht
     auf eine Seite gesetzt werden. Aus diesem Grund sollte man den
     optionalen Parameter _nicht_ setzen und wenn, dann _alle_ au�er den
     nicht gew�nschten Plazierungsorte angeben.
  2. Werden die Parameter \...fraction ung�nstig gesetzt, so kann es
     ebenfalls sein, dass einige Flie�umgebungen nicht auf eine Seite
     gesetzt werden k�nnen. N�heres findet sich in Frage 6.1.1 und in
     Keith Reckdahls Artikel `Using Imported Graphics in LaTeX2e'
     (epslatex).
  3. In einigen wenigen F�llen, wo sehr viele Flie�umgebungen und viele
     mit \marginpar eingef�gte Marginalen, die die gleichen Register
     teilen, verwendet werden, sind mehr als 18 Register notwendig. Hier
     kann das Paket `morefloats' weiterhelfen, dass deren Zahl auf 36
     erh�ht. Leider hat man dadurch 18 Savebox-, Z�hler-, L�ngen- und
     Glue-Register weniger, so da� man jetzt evtl. auf den Fehler `No
     room for a new ...' st��t.
  4. Bestehen Textteile nur aus Flie�umgebungen ohne oder mit nur wenig
     Text, versagt LaTeX Plazierungsalgorithmus, da hier nichts ist, in
     denen sie ``flie�en'' k�nnen. In diesen F�llen gibt es folgende
     Abhilfen:

       1. Schreiben Sie mehr erl�uternden Text oder verteilen Sie die
          Flie�umgebungen besser im existierenden Text.
       2. F�gen Sie die Anweisung \clearpage zwischen einige
          Flie�umgebungen, um LaTeX zu zwingen, alle gespeicherten
          Flie�umgebungen auf eigene Seiten zu setzen. Diese L�sung ist
          mit Arbeit verbunden, da meist mehrere Versuche notwendig
          sind, um nur wenig gef�llte Seiten zu vermeiden und diese bei
          �nderungen wiederholt werden m�ssen. \afterpage{\clearpage}
          ist etwas besser, aber auch hier mu� man manuell nacharbeiten,
          um nur teilgef�llte Seiten zu vermeiden.
       3. Wenn kein Text vorhanden ist, in der die Flie�umgebungen
          flie�en k�nnen, so sollte man besser nicht-flie�ende
          Umgebungen verwenden.



epslatex:    CTAN: info/epslatex.ps
             CTAN: info/epslatex.pdf
morefloats:  CTAN: macros/latex/contrib/misc/morefloats.sty
 


6.1.5 Wie kann ich es erreichen, da� zwei Abbildungen nicht auf
verschiedenen Seiten, sondern m�glichst direkt untereinander plaziert
werden?

In eine einzige `figure'- bzw. `table'-Umgebung k�nnen auch mehrere
Abbildungen oder Tafeln gesetzt und mit eigenen Unterschriften versehen
werden:

  \begin{figure}
    erstes Bild
  \caption{erstes Bild}
  \vspace{\floatsep}    % zusaetzlicher Abstand zwischen zwei `floats'
    zweites Bild
  \caption{zweites Bild}
  \end{figure}

Alle Abbildungen oder Tafeln einer Umgebung werden dann nicht mehr
getrennt. Aus diesem Grund sollte man auch darauf achten, da� eine
`figure'- oder `table'-Umgebung durch zu viele Abbildungen und Tafeln
nicht zu hoch wird.

6.1.6 Wie kann ich in einer Abbildung zwei Bilder nebeneinander setzen?

Man kann zum Beispiel zwei `minipage'-Umgebungen verwenden, wobei man
dann auch mit deren optionalem Argument die Ausrichtung der beiden
Bilder angeben kann:

  \begin{figure}
  \begin{minipage}[b]{.4\linewidth} % [b] => Ausrichtung an \caption
    Bild links
    \caption{Bildunterschrift links}
  \end{minipage}
  \hspace{.1\linewidth}% Abstand zwischen Bilder
  \begin{minipage}[b]{.4\linewidth} % [b] => Ausrichtung an \caption
    Bild rechts
    \caption{Bildunterschrift rechts}
  \end{minipage}
  \end{figure}

Ein sehr viel bequemerer Weg, um mehrere zusammengeh�rende Abbildungen
oder Tafeln in einer Float-Umgebung zu setzen, bietet das Paket
`subfigure'. Hierzu stellt das Paket die Anweisungen \subfigure und
\subtable zur Verf�gung. Die Formatierung der Einzelabbildungen l��t
sich sehr leicht anpassen.

subfigure:  CTAN: macros/latex/contrib/subfigure/
 


6.1.7 Wie kann ich eine Abbildung (`figure') und eine Tafel (`table')
nebeneinander setzen?

Verwendet man statt der Anweisung \caption die im Paket `capt-of'
definierte Anweisung \captionof, so ist es m�glich, eine eigentlich zu
einer anderen Flie�umgebung geh�rige Beschriftung zu erreichen. Wie hier
gezeigt

  \usepackage{capt-of}
  ...
  \begin{figure}
    \begin{minipage}{.5\linewidth}
      Abbildung
     \caption{Abbildung}
    \end{minipage}%
    \begin{minipage}{.5\linewidth}
      Tafel
      \captionof{table}{Tafel}
      % auch: \captionof{table}[Eintrag im Verzeichnis]{Tafel}
    \end{minipage}
  \end{figure}

kann man eine Abbildung und eine Tafel nebeneinander setzen, wobei die
Unterschriften auch in das jeweilige Verzeichnis gelangen. Die Anweisung
\captionof ist auch geeignet, um nichtgleitende Abbildungen mit einer
Bildunterschrift zu versehen.

capt-of:  CTAN: macros/latex/contrib/misc/capt-of.sty
 


6.1.8 Wie kann ich mehrere zusammengeh�rige Abbildungen bzw. Tafeln
entsprechend mit 1a, 1b etc. numerieren?

Das Paket `subfigure' bietet die Anweisungen \subfigure und \subtable
an, mit der man dies innerhalb der gewohnten `figure'- oder
`table'-Umgebung erreichen kann.

subfigure:  CTAN: macros/latex/contrib/subfigure/
 


6.1.9 Gibt es bei der Option `twocolumn' die M�glichkeit, Abbildungen
(`figure') und Tafeln (`table') �ber beide Spalten, also die gesamte
Textbreite einer Seite zu setzen?

Statt `figure'- die `figure*'-, statt `table'- die `table*'-Umgebung
verwenden.

6.1.10 Wieso bekomme ich Fehlermeldungen, wenn ich eine
`figure'-Umgebung in andere Umgebungen oder Anweisungen einf�ge?

Eine `figure'- oder `table'-Umgebung ist ein sogenannter `float', d.h.
der Inhalt ``flie�t'' an eine andere Stelle. Deshalb darf diese Umgebung
nicht innerhalb einer anderen, wie `minipage', \parbox o.�. verwendet
werden. Die Eingabe

  \begin{minipage}{5cm}   %% FALSCH!
  \begin{figure}
    Bild
    \caption{text}
  \end{figure}
  \end{minipage}

ist daher falsch und erzeugt den in der Frage genannten Fehler. Korrekt
und auch logisch einsichtiger ist es, wenn man den Inhalt der
`figure'-Umgebung in eine `minipage' packt, also diese _in_ die
`figure'-Umgebung setzt:

  \begin{figure}
    \begin{minipage}{5cm}   %% KORREKT!
      Bild
      \caption{text}
    \end{minipage}
  \end{figure}


6.1.11 Wie kann ich das Layout der Bildunterschriften (\caption)
ver�ndern?

LaTeX verwendet die interne Anweisung \@makecaption{Bild Nr}{Text}, um
die Bildunterschrift inkl. Bildnummer zu setzen. Indem man diese
Anweisung ver�ndert, die in der Dokumentklasse definiert wird, kann man
das Layout �ndern. Will man nur die Bildnummer (z.B. ``Abbildung 1'')
�ndern, so reicht es oftmals aus, die interne Anweisung \fnum@figure
bzw. f�r Tafeln \fnum@table entsprechend umzudefinieren.
Zur Vereinfachung gibt es einige leicht zu verwendende Pakete: `caption'
bzw. `caption2' haben viele Optionen; diese Pakete erm�glichen die
Variation der Schriftart und -gr��e und des Layouts (zentriert,
�berh�ngend, Absatz mit Einr�ckung usw.). Beispiel:

  \usepackage[bf]{caption2}
  \renewcommand{\captionfont}{\small\itshape}

f�r einen etwas kleineren und kursiv gesetzten Unterschriftentext, wobei
die Bildnummer weiterhin fett gesetzt wird.
Um die Benennung zu �ndern, wenn man also statt ``Abbildung''
beispielsweise ``Abb.'' verwenden m�chte, erreicht man dies durch

  \renewcommand{\figurename}{Abb.}

Im Falle einer Tafel mu� analog dazu \tablename umdefiniert werden.
(Achtung: Bitte weitere Hinweise in Frage Frage 8.5.9 beachten!)
Wollen Sie die Z�hlweise der Abbildungs- bzw. Tabellennumerierung
�ndern, so beachten Sie auch Frage Frage 8.5.2.
Speziellere L�sungen existieren nat�rlich auch oder sind teilweise in
einigen Dokumentklassen enthalten. So enthalten die NTG-und
KOMA-Script-Klassen beispielsweise Anweisungen, um alle Fonts (Sections,
Captions, Running Heads) zu ver�ndern.

epslatex:          CTAN: info/epslatex.ps
                   CTAN: info/epslatex.pdf
caption/caption2:  CTAN: macros/latex/contrib/caption
NTG-Klassen:       CTAN: macros/latex/contrib/ntgclass
KOMA-Script:       CTAN: macros/latex/contrib/koma-script/
hangcaption:       CTAN: macros/latex209/contrib/misc/hangcaption.sty
isucaption:        CTAN: macros/latex209/contrib/misc/isucaption.sty
 


6.1.12 Wie kann ich die Unterschriften (\caption) neben eine Abbildung
oder eine Tafel setzen?

Zu diesem Zweck ist das Paket `sidecap' gedacht.

sidecap:  CTAN: macros/latex/contrib/sidecap
 


6.1.13 Wie kann ich Abbildungen oder Tafeln, die nicht innerhalb einer
`figure'- oder `table'-Umgebung stehen, dennoch mit einer
Bildunterschrift (Legende) versehen?

Keith Reckdahls Artikel `Using Imported Graphics in LaTeX2e' (epslatex)
enth�lt die Beschreibung eines entsprechenden Tricks. Das Paket
`capt-of' (siehe auch Frage 6.1.7) implementiert diesen und stellt eine
entsprechende Anweisungen zum Satz von Legenden f�r nicht-gleitende
Abbildungen zur Verf�gung.

capt-of:  CTAN: macros/latex/contrib/misc/capt-of.sty
 


6.1.14 Wie kann man neue Typen von Gleitumgebungen (`floats') z.B. f�r
weitere Arten von Tafeln oder Programm-Code erzeugen?

Prinzipiell mu� man f�r einen neuen Typ von Gleitumgebung einige Makros
definieren. Beispielsweise sind f�r die zu definierenden Umgebungen
`faqtable' und `faqtable*' die folgenden Anweisungen (in eine .sty-Datei
schreiben, da interne Anweisungen!) notwendig,

  \newcounter{faqtable}[section]
  %\renewcommand{\thefaqtable}{\thesection.\arabic{table}}
  %% \thefaqtable wird bereits durch \newcounter definiert
  \renewcommand{\fps@faqtable}{tp}  % nicht `h' bzw. `b'
  \renewcommand{\ftype@faqtable}{4} % type is a power of two!
  \renewcommand{\ext@faqtable}{lot} % Endung der Hilfsdatei
  \renewcommand{\fnum@faqtable}{FAQ-Tabelle~\thefaqtable}
  \newenvironment{faqtable}{\@float{faqtable}}{\end@float}
  \newenvironment{faqtable*}{\@dblfloat{faqtable}}{\end@dblfloat}

wobei damit noch keine Anpassungen des Inhaltsverzeichnisses, ein
eigenes Inhaltsverzeichnis oder sonstige Anpassungen des Layouts
durchgef�hrt sind. Mehr Informationen dazu findet man im Buch `Der
LaTeX-Begleiter' (siehe Frage 2.4.1).
Sehr viel einfacher geht dies mit dem Paket `float', mit dem z.B. obiges
auch der normale LaTeX-Benutzer mit der simplen Anweisung
                 \newfloat{faqtable}{tp}{lot}[section]
definieren kann. Daneben sind auch schon einige `float'-Layouts
vordefiniert und k�nnen ebenso einfach verwendet werden.

float:  CTAN: macros/latex/contrib/float
 


6.1.15 Abbildungen und Tafeln sollen _immer_ nach dem ersten Verweis auf
sie gesetzt werden. Wie? Es ist m�glich, da� LaTeX sie vor der
Abschnitts�berschrift plaziert. Wie unterbinde ich das?

Mit dem LaTeX-Paket `flafter', das Bestandteil jeder LaTeX-Verteilung
ist, werden Abbildungen und Tafeln nie vor dem Text plaziert, in dem sie
im Dokument angegeben werden. Damit LaTeX sie also nie vor dem ersten
Verweis plaziert, schiebt man die entsprechende `figure'- bzw.
`table'-Umgebung einfach hinter die erste \ref- bzw. \pageref-Anweisung.

flafter:  CTAN: macros/latex/base/
          CTAN: macros/latex/unpacked/
 


6.1.16 Gibt es eine einfache M�glichkeit, eine Abbildung oder Tafel
innerhalb des normalen Textes zu setzen, sie also mit dem normalen Text
umflie�en zu lassen?

Hierf�r gibt es mittlerweile eine gro�e Anzahl von Paketen mit
unterschiedlichen Beschr�nkungen und Vor- und Nachteilen, die Piet van
Oostrum in einer Liste, die er unregelm��ig nach `comp.text.tex' postet,
aufz�hlt:
  `flow', `floatflt' (f�r LaTeX2e, Vorg�nger `floatfig' ist f�r LaTeX
      2.09), `picinpar' (veraltet), `picins', `window', `wrapfig'.
Empfohlen werden: `picins' (funktioniert auch in Listen-Umgebungen),
`floatflt' und `wrapfig' (unterst�tzen neben `figure'- auch
`table'-Umgebungen), da diese am meisten k�nnen und die wenigsten Fehler
aufweisen.

picins:    CTAN: macros/latex209/contrib/picins
floatflt:  CTAN: macros/latex/contrib/floatflt
wrapfig:   CTAN: macros/latex/contrib/wrapfig/
 


6.1.17 Wieso erhalte ich bei einigen Abbildungen falsche Querverweise,
obwohl ich doch die \label-Anweisung innerhalb der `figure'-Umgebung
verwendet habe?

Die \label-Anweisung mu� _nach_ der Anweisung folgen, die f�r die
Numerierung und damit auch f�r die `Verankerung' des Verweises sorgt.
Solche Verankerungsanweisungen sind z.B. \section oder \caption, die
`figure'-Umgebung dagegen ist keine. Daher mu� das \label _nach_ der
entsprechenden \caption folgen:

  \begin{figure}
    ... Abbildung ...
    \caption{Dies ist eine Abbildung}
    \label{fig:beispielabbildung}
  \end{figure}


6.1.18 Wie kann ich erreichen, da� Abbildungen oder Tafeln, die alleine
auf einer sonst leeren Seite plaziert werden, b�ndig mit der
Seitenoberkante statt vertikal zentriert erscheinen?

F�r die Zentrierung von Float-Objekten sind die internen L�ngenparameter
\@fptop, \@fpsep und \@fpbot verantwortlich. Um die vertikale
Zentrierung aufzuheben, ist daher \@fptop im Dokumentkopf oder in einer
eigenen Paketdatei auf eine unflexible L�nge zu setzen:

  \setlength{\@fptop}{0pt}

(Bitte beachten, da� \@fptop ein interner Parameter ist und au�erhalb
einer Paketdatei mit \makeatletter/\makeatother geklammert werden mu�.)
Diese �nderung gilt dann f�r _alle_ Float-Objekte, also sowohl
Abbildungen als auch Tafeln.

6.2 Tabellen


6.2.1 Wie kann ich erreichen, da� sich eine Tabelle �ber mehrere Seiten
erstreckt?

Zu diesem Zweck gibt es die beiden Pakete `longtable' und `supertabular'
sowie `ltxtable', welches die M�glichkeiten von `longtable' und
`tabularx' in sich vereinigt.
`longtable' benutzt auf jeder Seite die gleiche Spaltenbreite, w�hrend
`supertabular' auf jeder Seite die Spaltenbreite neu berechnet.
`supertabular' funktioniert im Gegensatz zu `longtable' auch mit der
Klassenoption `twocolumn'. `tabularx' ist nicht direkt f�r mehrseitige
Tabellen gedacht, sondern zum Austreiben einer Tabelle auf eine
bestimmte Breite. Eine mehrseitige Tabelle kann mit `ltxtable' auf eine
bestimme Breite ausgetrieben werden, wof�r auch die Pakete `longtable'
und `tabularx' erforderlich sind.

longtable:     CTAN: macros/latex/required/tools/
tabularx:      CTAN: macros/latex/required/tools/
supertabular:  CTAN: macros/latex/contrib/supertabular
ltxtable:      CTAN: macros/latex/contrib/carlisle
 


6.2.2 Wie kann ich einzelne Felder oder gr��ere Bereiche einer Tabelle
farbig oder grau hinterlegen?

Zu diesem Zweck gibt es die beiden Pakete `colortbl' und `colortab'.
N�here Hinweise sind den beiliegenden Dokumentationen oder dem Buch
``The LaTeX Graphics Companion'' (siehe Frage 2.4.1) zu entnehmen.

colortbl:  CTAN: macros/latex/contrib/carlisle
colortab:  CTAN: macros/generic/colortab/
 


6.2.3 Wie kann ich erreichen, da� sich eine Tabelle �ber die gesamte
Spalten- bzw. Textbreite (oder �ber eine andere vorgegebene Breite)
erstreckt?

Zu diesem Zweck gibt es das Paket `tabularx' sowie `ltxtable', welches
die M�glichkeiten von `longtable' und `tabularx' in sich vereinigt.
`tabularx' erm�glicht das Austreiben einer Tabelle auf eine bestimmte
Breite. Hierzu wird ein neuer Spaltentyp `X' definiert, der sich wie
eine `p'-Spalte verh�lt, ohne da� man jedoch die Breite explizit angeben
mu�. Stattdessen wird von `tabularx' die f�r alle `X'-Spalten zur
Verf�gung stehende Gesamtbreite berechnet und jeder `X'-Spalte ein
entsprechender Bruchteil davon zugewiesen. Eine mehrseitige Tabelle kann
mit `ltxtable' auf eine bestimme Breite ausgetrieben werden, wof�r auch
die Pakete `longtable' und `tabularx' erforderlich sind.

tabularx:  CTAN: macros/latex/required/tools/
ltxtable:  CTAN: macros/latex/contrib/carlisle
 


6.2.4 Wie kann ich erreichen, da� Zahlen in einer Tabelle am
Dezimaltrennzeichen ausgerichtet werden?

Die LaTeX-Pakete `dcolumn' und `rccol' (erfordert `fltpoint') sind dazu
geeignet. Letzteres gestattet auch das Runden der Zahlen.

dcolumn:  CTAN: macros/latex/required/tools/
rccol:    CTAN: macros/latex/contrib/rccol/
 


6.2.5 Wie kann ich in einer tabular-Umgebung eine Spalte speziell
setzen, ohne dies in jedem Eintrag zu wiederholen?

Das Paket `array' erweitert die Umgebungen `array' und `tabular' um
weitere Deklarationen, wie >, <, !, m oder p, in der Tabellenpr�ambel.
So wird bei ``>{text}'' der Teil ``text'' direkt vor die folgende Spalte
eingef�gt, so da� beispielsweise nach

  \begin{tabular}{c>{\scshape}cc}

die zweite der drei Spalten in Kapit�lchen gesetzt wird.

array:  CTAN: macros/latex/required/
 


6.2.6 Wieso kann ich in einer tabular-Umgebung die letzte Spalte nicht
mit \raggedright linksb�ndig setzen?

\raggedright definiert die Anweisung \\ um, die in den Umgebungen
`tabular' und `array' zur Markierung des Zeilenendes benutzt wird. In
LaTeX2e und den Paketen `array' und `longtable' existiert daher seit
Dezember 1994 die neue Anweisung \tabularnewline, die man f�r diesen
Zweck anstelle von \\ verwenden kann.
F�r andere Pakete und �ltere Versionen kann man auch folgenden Trick aus
dem Buch `Der LaTeX-Begleiter' (siehe Abschnitt 2.4.1) anwenden:

  \newcommand{\PreserveBackslash}[1]{%
    \let\temp=\\#1\let\\=\temp}

Statt einem einfachen \raggedright verwendet man in einer Tabelle dann
\PreserveBackslash{\raggedright}.
Ebenfalls n�tzlich ist in diesem Zusammenhang die folgende Zeile

  \usepackage[NewCommands]{ragged2e}

zu Beginn des Dokuments. Damit wird eine bessere Trennung innerhalb
eines mittels \raggedright linksb�ndig mit rechtem Flatterrand gesetzten
Absatzes bewirkt.

ragged2e:  CTAN: macros/latex/contrib/ms/
 


6.2.7 Wie erreiche ich, da� mit `tabular' erstellte Tabellen b�ndig mit
dem linken Rand gesetzt werden?

Zwischen den Spalten einer `tabular', aber auch links von der ersten und
rechts von der letzten Spalte, wird �blicherweise ein Zwischenraum der
Breite \tabcolsep eingef�gt. Um diesen zu unterdr�cken, mu� man in die
Tabellenpr�ambel die Anweisung ``@{}'' einf�gen, also beispielsweise

  \begin{tabular}{@{}ll@{}}
  ...           % ^^^  ^^^
  \end{tabular}

Die Anweisung ``@{text}'' sorgt daf�r, da� ``text'' _statt_ eines
Spaltenzwischenraums eingef�gt wird. ``@{}'' unterdr�ckt also, da�
zwischen zwei Spalten Zwischenraum eingef�gt wird. Daran sollte man auch
bei \multicolumn-Anweisungen denken, die sich �ber die erste bzw. letzte
Spalte etwa einer dreispaltigen Tabelle erstrecken:

  \multicolumn{2}{@{}l}{Spalten 1 und 2} & bla \\

bzw.

  bla & \multicolumn{2}{l@{}}{Spalten 2 und 3} \\


6.3 Fu�noten, Endnoten etc. (*)


6.3.1 Die Fu�noten sollen gesammelt am Ende des Kapitels erscheinen.


endnotes:  CTAN: macros/latex/contrib/misc/endnotes.sty
 


6.3.2 Ich m�chte meine Fu�noten auf jeder Seite neu beginnend
durchz�hlen, d.h. auf jeder Seite soll mit `1' begonnen werden.


footnpag:  CTAN: macros/latex/contrib/footnpag
 


6.3.3 Ich m�chte den maximal von den Fu�noten eingenommenen Platz auf 10
Zeilen beschr�nken. Wie?

Das L�ngenregister \dimen\footins gibt die maximale H�he der Box mit den
Fu�noten f�r eine Seite an. Nach

  \setlength{\dimen\footins}{10\baselineskip}

wird dieser Platz von normalerweise 8 Inch (ca. 20,5 cm) auf ca. 10
Zeilen beschr�nkt.

6.3.4 Wie erreiche ich eine andere Formatierung der Fu�noten?

Mit dem Paket `footmisc' von Robin Fairbairns (hatte bis Januar 1998
noch den Namen `footnote') kann man sehr einfach einige andere
Formatierungen ausw�hlen. Ansonsten findet man im Buch `Der
LaTeX-Begleiter' n�here Informationen.

footmisc:  CTAN: macros/latex/contrib/footmisc/
 


6.3.5 Wie erhalte ich eine Fu�note innerhalb einer `figure' oder
`table'? Es erscheint zwar eine Markierung, aber kein Fu�notentext. (*)

In Gleitumgebungen funktionieren keine Fu�noten, da diese mitgleiten
m��ten, was ohne sehr viel Aufwand nicht m�glich ist. Abhilfe kann man
dadurch schaffen, da� man Fu�noten innerhalb einer \caption vermeidet
und den Fu�notentext in die Unterschrift mit einbindet. Ansonsten kann
man die Abbildung oder Tafel in eine `minipage'-Umgebung einklammern, so
da� der Fu�notentext mit in die Gleitumgebung gesetzt wird und somit
mitgleiten kann. Die dann meist st�rende Abgrenzungslinie kann man mit
\renewcommand{\footnoterule}{} innerhalb der `minipage'-Umgebung
vermeiden.

  \begin{figure}
  \begin{minipage}{\linewidth}
    \renewcommand{\footnoterule}{}
    ... Abbildung mit \footnote{...} ...
  \end{minipage}
  \caption{ ... }
  \end{figure}

Eine weitere M�glichkeit bietet das Paket `threeparttable':

  \begin{figure}
    \begin{threeparttable}
      Abbildung oder Tabelle mit Fu"snote\tnote{1}
      \medskip
      \begin{tablenotes}\footnotesize
      \item[1] Wichtiger Fu"snotentext...
      \end{tablenotes}
    \end{threeparttable}
    \caption{ ... }
  \end{figure}


threeparttable:  CTAN: macros/latex/contrib/misc/threeparttable.sty
 


6.3.6 Wie kann ich Fu�noten in mehreren Gruppen getrennt voneinander auf
einer Seite erscheinen lassen?

Das Paket `manyfoot' erlaubt die Deklaration zus�tzlicher
Fu�notenebenen, die zudem noch auf zwei Arten gesetzt werden k�nnen.

manyfoot:  CTAN: macros/latex/contrib/ncctools/
 


6.3.7 Wie erreiche ich, da� meine Fu�noten nicht am Text ``h�ngen''
sondern unten auf der Seite gesetzt werden?

Das Paket `footmisc' bietet mit der Option `bottom' einen Weg, wenn
durch die Deklaration \raggedbottom die Seitenh�he flattert. In diesem
Fall setzt LaTeX die Fu�note mit etwas vertikalen Abstand
(\skip\footins) an den Text, so da� die Fu�noten ebenso mitflattern.
Fu�noten werden normalerweise am Fu�e des Flie�textes und nicht der
Seite gesetzt, also _oberhalb_ einer eventuell vorhandenen unten
plazierten Flie�umgebung. Mit dem Paket `stfloats' werden die Fu�noten
an die Unterkante des Satzspiegels verschoben.

footmisc:  CTAN: macros/latex/contrib/footmisc/
stfloats:  CTAN: macros/latex/contrib/sttools/
 


6.3.8 Wie kann ich eine Fu�note in einer Kapitel- oder
Abschnitts�berschrift setzen?

Wie in Frage 7.4.2 erl�utert, m�ssen zerbrechliche Anweisungen wie
\footnote in einem `moving argument' mit \protect gesch�tzt werden, also
beispielsweise

  \section{Titel des Abschnitts\protect\footnote{Fasse dich kurz!}}

Bei Fu�noten ist dies jedoch nicht sinnvoll, da diese dann auch im
Inhaltsverzeichnis und im lebenden Kolumnentitel auftauchen w�rde. Hier
ist es besser, das optionale Argument der �berschriftsanweisungen zu
verwenden:

  \section[Titel des Abschnitts]%
          {Titel des Abschnitts\footnote{Fasse dich kurz!}}


6.4 Grafiken, Bilder, Farbe und andere Effekte (*)


6.4.1 Wie kann ich Grafiken in mein (La)TeX-Dokument einf�gen? (*)

Die LaTeX-Pakete `graphics' bzw. `graphicx' definieren die Anweisung
\includegraphics, welche einen einfachen Weg darstellt, die Einbindung
von Grafiken in ein LaTeX-Dokument in einer weitgehend
systemunabh�ngigen Syntax vorzunehmen. Die fr�her f�r denselben Zweck
verwendeten Anweisungen \psfig, \epsfig, \epsfbox usw. (enthalten in den
Paketen `psfig', `epsf' und `epsfig') sollten nicht mehr verwendet
werden, da sie teilweise fehlerhaft sind, nur f�r ausgew�hlte Treiber
funktionieren und auch nicht weiterentwickelt werden.
Neben \includegraphics werden weitere n�tzliche Befehle zum Skalieren
und Rotieren definiert. Die Gr��e der Grafik, die von LaTeX ben�tigt
wird, um entsprechend Platz f�r die Grafik zu lassen, wird bei
Encapsulated-PostScript-(EPS-)Dateien direkt aus dem
`BoundingBox'-Kommentar in der EPS-Datei gelesen. Bei anderen,
insbesondere bei bin�r vorliegenden Grafikformaten wie `gif' oder `pcx'
kann die Gr��e in einer begleitenden Textdatei bzw. im optionalen
Argument der Anweisung \includegraphics angegeben werden. Mit dem
Paketparameter `draft' des Paketes `graphics' kann man LaTeX
veranlassen, in die dvi-Datei nur einen Rahmen in der Gr��e der Grafik
statt des Verweises auf die Grafikdatei einzuf�gen, was das Betrachten
beschleunigt und zum Korrekturlesen manchmal hilfreich ist.
Die Grafikinformation kann bei EPS-Dateien sowohl als Vektoren als auch
in Form von Angaben zur Position der einzelnen Grapkikpunkte
(Pixelgrafik) enthalten sein. Wenn m�glich, sollte man immer
Vektorgrafiken bevorzugen, da sie ohne Qualit�tsverluste skaliert werden
k�nnen. Ist man, wie bei gescannten Bildern, auf Pixelgrafiken
angewiesen, so sollte man zur Vermeidung von Qualit�tsverlusten darauf
achten, da� die Aufl�sung der Grafik derjenigen des Druckers entspricht.
Man bedenke auch, da� Graut�ne nur mit besser aufl�senden Ausgabeger�ten
(mind. 600dpi, besser mehr) gut wiedergegeben werden.
Um vorhandene Pixelgrafiken nach EPS zu wandeln, kann man die
Exportfunktion etlicher Grafikprogramme nutzen. Es gibt dar�berhinaus
die beiden Programme `jpeg2ps' und `tiff2ps', die sehr kompakte
EPS-Dateien erzeugen. Sie erfordern Ausgabeger�te, die `PostScript
Level 2' beherrschen, wie beispielsweise alle modernen PS-Drucker und
neue Ghostscript-Versionen. Alternativ kann man zur Konvertierung von
JPEG nach EPS auch `imgtops2' verwenden, das in der EPS-Ausgabe
DCT-Kompression nutzt und so sehr kompakte EPS-Dateien erzeugt. Zur
Konvertierung von Pixelgrafiken, die im Format PNG, aber auch TIFF, JPEG
und Netpbm vorliegen, in EPS f�r Ger�te mit PostScript Level 1, 2
oder 3, gibt es das Programm `bmeps', f�r TIFF auch `tif2eps', das
Ghostscript voraussetzt. Ein weiteres Programm, welches eine Vielzahl
von Grafikformaten konvertieren kann, ist `convert', das Bestandteil der
Programmsammlung `ImageMagick' ist. Es steht ebenfalls f�r viele
Betriebssysteme zur Verf�gung. Da die meisten dvi-Preview-Programme
enthaltene EPS-Grafiken nicht darstellen k�nnen, empfiehlt es sich, die
dvi-Datei nach PostScript zu wandeln und dann ein
PostScript-Preview-Programm (`gv', `gsview', `ghostview', `Ghostscript'
etc.) zu verwenden.
Sehr ausf�hrliche und gut verst�ndliche Hinweise zu diesem Thema enth�lt
Keith Reckdahls Artikel `Using Imported Graphics in LaTeX2e' (epslatex)
und das Buch `The LaTeX Graphics Companion' von Michel Goossens u.a.
sowie `TeX/LaTeX und Graphik, ein �berblick �ber die Verfahren' von
Friedhelm Sowa (siehe Abschnitte 2.4.1 und 2.4.2).

graphics/graphicx:  CTAN: macros/latex/required/graphics/
graphicx            CTAN: macros/plain/graphics/
(Plain-TeX): 
epslatex (Keith     CTAN: info/epslatex.ps
Reckdahl): 
                    CTAN: info/epslatex.pdf
Graphics and Colour
with LaTeX (Patrick http://www.linmpi.mpg.de/~daly/latex/grf.htm
W. Daly): 
LaTeX2e und Grafik
(Sebastian          http://www.loh-fi.de/howto/latex.htm
Lohmeier): 
jpeg2ps:            http://www.pdflib.com/jpeg2ps/
                    CTAN: nonfree/support/jpeg2ps/
imgtops2:           http://www.cs.washington.edu/homes/dougz/postscript/imgtops2/
tiff2ps:            CTAN: graphics/tiff/
tif2eps:            CTAN: support/pstools/tif2eps/
bmeps:              CTAN: support/bmeps/
gif2eps:            http://www.zib.de/Visual/software/
ImageMagick:        http://www.imagemagick.org/
 


6.4.2 Wie kann ich erreichen, da� anstelle der Grafiken nur leerer Platz
in der Gr��e der Grafiken im LaTeX-Dokument erscheint?

Mit der Option `draft' der Pakete `graphics' bzw. `graphicx'

  \usepackage[draft]{graphicx}

erreicht man, da� statt der Grafiken nur ein Rahmen in Gr��e der Grafik
gezeichnet wird. Zus�tzlich wird der Name der einzuf�genden Datei in
diesen Rahmen geschrieben.
Tip: Verwendet man die Option `draft' in der Klassendeklaration, so gilt
diese auch f�r das Paket `graphicx'. Diese globale Option kann jedoch
mit der Paketoption `final' wieder �berschrieben werden.
Will man weder Rahmen noch Dateinamen erhalten, so kann man das Paket
`crop' in der folgenden Weise nutzen:

  \usepackage[nographics]{crop}[2001/10/07]

Den gegenteiligen Effekt erreicht man mit der Paketoption `notext'.

crop:  CTAN: macros/latex/contrib/crop/
 


6.4.3 Wie kann ich mit TeX farbigen Text setzen?

Das LaTeX-Bundle `graphics' enth�lt das Paket `color', das Befehle zur
Verf�gung stellt, mit denen man Textteile einf�rben, eine Box oder den
Hintergrund einer Seite farbig hinterlegen kann. Dies funktioniert
nat�rlich nur, wenn das Ausgabeger�t (Drucker, Bildschirm) dazu in der
Lage ist und der dvi-Treiber die dazu notwendige Funktionalit�t hat,
entsprechende \special-Anweisungen mit den Farbbefehlen auszuwerten.
Um das Paket `color' an verschiedene Ausgabeger�te und dvi-Treiber
anzupassen, mu� eine entsprechende Definitionsdatei f�r den jeweiligen
Treiber vorhanden sein bzw. noch erstellt werden. Auf jedem System
sollte in der Datei ``color.cfg'' eine dvi-Treiber-Definition als
Default angegeben sein. Das Paket `color' l��t sich dann wie folgt
verwenden:

  \usepackage{color}

Will man in einem Dokument einen vom Standard abweichenden dvi-Treiber
verwenden, so kann man den Namen der dvi-Treiber-Definition als
Paket-Option angeben:


  \usepackage[dvips]{color}

erzeugt eine dvi-Datei mit Farb-\special-Anweisungen f�r den
dvi-PostScript-Treiber `dvips'. Danach kann man die entstehende
dvi-Datei auch mit anderen dvi-Treibern �bersetzen bzw. ausdrucken,
jedoch werden in den meisten F�llen die Farb-\special-Anweisungen nicht
erkannt und mit einer Warnung ignoriert.
Eine genauere Beschreibung der einzelnen Anweisungen und der vorhandenen
Definitionsdateien findet man in der Anleitung `grfguide' im Paket
`graphics'.

graphics/color:  CTAN: macros/latex/required/graphics/
 


6.4.4 Bei mit `XFig' erstellten und exportierten Zeichnungen erhalte ich
bei der Einbindung in LaTeX den Fehler, da� \SetFigFont nicht definiert
ist. Was ist falsch?

Das Programm `fig2dev', das XFig zum Wandeln und Exportieren von
Fig-Bildern aufruft, hat in den Versionen vor Version 3.1pl1 einen
Fehler, der dazu f�hrt, da� das Makro \SetFigFont nicht immer definiert
ist. Nach einem Update des Paketes `Transfig', welches `fig2dev'
enth�lt, verschwindet der Fehler. Kann man auf den Update nicht warten,
bietet sich auch als Einfachstl�sung die Definition
\newcommand{\SetFigFont}[3]{} in der Dokumentpr�ambel an.

transfig/fig2dev:  CTAN: graphics/transfig/
 


6.4.5 Bei Verwendung von PiCTeX erhalte ich die Meldung `No room for a
new \dimen'. Wie kann ich das vermeiden?

PiCTeX verwendet sehr viele von TeXs Z�hler- und L�ngenregistern und
wenn noch weitere Pakete hinzugeladen werden, die ebenso Register
ben�tigen, gehen die jeweils 256 vorhandenen, von denen LaTeX bereits
nicht wenige ben�tigt, aus. Die erste L�sung besteht in der Verwendung
des ConTeXt-Moduls `m-pictex' von Hans Hagen, das beim Laden von PiCTeX
daf�r sorgt, da� statt L�ngen- an einigen Stellen Glue-Register
verwendet werden. Eine alternative L�sung besteht in der Verwendung des
Paketes `pictexwd', eines von Andreas Schrell ver�nderten PiCTeX, das
weniger L�ngenregister benutzt.
Eine weitere L�sungsm�glichkeit besteht darin, die gr��ere Anzahl an
Registern zu nutzen, die e-TeX zur Verf�gung stellt. Verwendet man LaTeX
(Aufruf: elatex), mu� das Paket `etex' vor PiCTeX geladen werden, um von
e-TeX zu profitieren.

m-pictex.tex, m-pictex.sty:  CTAN: macros/context/cont-tmf.zip
pictexwd:                    CTAN: graphics/pictex/addon/
etex.sty ist momentan nur in teTeX und fpTeX enthalten.
 


6.4.6 Was kann ich tun, wenn eine Grafik im EPS-Format beim Einf�gen in
ein LaTeX-Dokument Probleme bereitet?

Nicht selten erzeugen Grafikprogramme beim Speichern der Ergebnisse im
PostScript-Code keine oder eine fehlerhafte Boundingbox-Kommentarzeile.
Diese Angabe ist jedoch beim Einf�gen der Grafik in ein LaTeX-Dokument
unbedingt erforderlich, da sonst der ben�tigte Platz nicht korrekt
berechnet werden kann. Der im folgenden testweise eingef�gte Rahmen
zeigt die Gr��e der Boundingbox in Relation zur Grafik:

  \usepackage{graphicx}
  % ...
  \begin{figure}
    \setlength{\fboxsep}{-\fboxrule}\fbox{\includegraphics{dateiname}}
  \end{figure}

Ist die Boundingbox-Zeile fehlerhaft, kann folgenderma�en vorgegangen
werden:

  Manuelle Korrektur:

      Man lade die EPS-Datei in einen PostScript-Viewer und notiere sich
      die Koordinaten der linken unteren (ll,lr) und der rechten oberen
      (ul,ur) Ecke des interessierenden Teils der Grafik, wobei die
      Ma�einheit bp (big points) verwendet werden mu�. Diese Werte f�ge
      man mit Hilfe eines ASCII-Editors im Anschlu� an die Zeile
      ``%!PS-Adobe ...'' am Anfang der EPS-Datei hinzu bzw. korrigiere
      die vorhandene Angabe entsprechend:

        %%BoundingBox: ll lr ul ur

      Statt des Eintrags in die EPS-Datei k�nnen die Werte auch als
      optionale Parameter der `\includegraphics'-Anweisung angegeben
      werden:

        \includegraphics[bb= ll lr ul ur]{dateiname}


  Automatische Korrektur:

      Man verwende das Programm `epstool' in der folgenden Weise:

        epstool -b -c -oausgabedatei.eps eingabedatei.eps

      In der Datei ``eingabedatei.eps'' befinde sich die fehlerhafte
      Grafik, danach enth�lt ``ausgabedatei.eps'' die korrigierte
      Grafik. `epstool' erfordert die vorherige Installation des
      PostScript-Interpreters `Ghostscript'.
      Alternativ dazu kann versucht werden, das Problem unter Verwendung
      des Programms `epstopdf' zu l�sen:

        epstopdf --nogs --outfile=ausgabedatei.eps eingabedatei.eps

      Liegt die Grafik in Form einer einseitigen PostScript-Datei vor,
      kann man mit Hilfe des Programms `ps2eps' versuchen, diese in eine
      EPS-Datei mit korrekter BoundingBox-Angabe umzuwandeln:

        ps2eps eingabedatei.ps

      `ps2eps' erfordert ebenfalls das Programm `Ghostscript' sowie
      `perl'.

Sollte trotz korrekter Angabe der BoundingBox ein ung�nstiges Ergebnis
entstehen, kann es daran liegen, da� die EPS-Datei f�lschlicherweise
PostScript-Anweisungen enth�lt, die auch den Bereich au�erhalb der
BoundingBox ver�ndern. Mit der Option [clip] der Anweisung
`\includegraphics' wird die Ausgabe auf den Bereich der BoundingBox
beschr�nkt.

epstool/gsview:      ftp://support/ghostscript/ghostgum/
epstopdf:            http://www.tug.org/applications/pdftex/
ps2eps:              CTAN: support/ps2eps/
Ghostscript (GPL):   CTAN: support/ghostscript/gnu/
Ghostscript (AFPL):  CTAN: nonfree/support/ghostscript/aladdin/
 


6.4.7 Warum werden Pixelgrafiken in pdf-Dateien, die ich mit pdfTeX
erzeugt habe, verzerrt oder mit falschen Farben dargestellt?

Vermutlich ist die Ursache die veraltete fehlerhafte
pdfTeX-Version 0.13d. Abhilfe schafft die Verwendung einer aktuellen
Version (z.B. 0.14f oder neuer). Bei dieser Gelegenheit empfiehlt es
sich, die im Zusammenhang mit dem LaTeX-Paket `graphicx' wichtige Datei
``pdftex.def'' und das LaTeX-Paket `hyperref' ebenfalls zu erneuern.

pdftex.def:  http://www.tug.org/applications/pdftex/
~:           CTAN: macros/latex/required/graphics
hyperref:    CTAN: macros/latex/contrib/hyperref/
~:           http://www.tug.org/applications/hyperref/
 


6.4.8 Wie kann ich unter Windows Bilder, Grafiken etc. mit LaTeX
verwenden?

Um Bilder u.�. aus Windows-Programmen in LaTeX einzubinden, sollte man
diese im EPS-Format in eine Datei drucken. Da es mit den EPS-Dateien,
die die Standard-EPS-Druckertreiber unter Windows erzeugen, immer wieder
zu Problemen kommt, sollte man stattdessen die PostScript-Druckertreiber
von Adobe installieren (siehe Frage 11.3.6).
Damit die EPS-Datei nun problemlos und korrekt unter LaTeX mit der
Anweisung \includegraphics eingebunden werden kann, ist die
Bounding-Box-Angabe in der Datei zu bestimmen und eventuell zu
korrigieren (siehe Frage 6.4.6).

6.4.9 Woher kann ich eine Dokumentation zum (La)TeX-Paket `pictex'
bekommen?

Leider ist die Originaldokumentation nur k�uflich von der Firma
``Personal TeX, Inc.'' zu erhalten. Ersatzweise kann man die frei
verf�gbare Dokumentation zu dem Programm `mathspic' verwenden.
`mathspic' ist ein unter DOS/Windows verwendbares Filterprogramm zum
vereinfachten Erstellen von PiCTeX-Grafiken.

Personal TeX, Inc.:  http://www.pctex.com
mathspic:            CTAN: graphics/pictex/mathspic/mpicm21.pdf
 


--- DE-TeX-FAQ Ende Teil 6 ---