float
Das float
Paket ermöglicht es neue eigene Gleitobjekte zu definieren. Auch bietet es die Möglichkeit bereits bestehende Gleitobjekte, wie zum Beispiel figure
und table
hinsichtlich ihrer Darstellung als auch ihrer Platzierung zu verändern. Insbesondere aufgrund des letzten Punktes, die Platzierung von Gleitobjekten, ist das float
Paket einem breiten Nutzerkreis bekannt.
[H]
Die Platzierung von Gleitobjekten innerhalb von LaTeX erfordert oft viel Geduld und Erfahrung vom Nutzer und ist daher einer der bekanntesten Kritikpunkte. Der interne Algorithmus zur Platzierung erlaubt es zwar im Prinzip, die Platzierung eines Gleitobjektes durch den Nutzer zu beeinflussen, aber das entsprechende Ergebnis entspricht allzu oft nicht der Erwartungshaltung des Verwenders.
Im Standard von LaTeX gibt es vier Parameter, mit denen die Platzierung beeinflusst werden kann.
t | Oben auf der Seite |
b | Unten auf der Seite |
p | Auf einer neuen Seite |
h | Falls möglich hier |
Das float
Paket bietet einen zusätzlichen fünften Parameter H an.
t | Oben auf der Seite |
b | Unten auf der Seite |
p | Auf einer neuen Seite |
h | Falls möglich hier |
H | Auf jeden Fall hier |
Der Parameter [H]
wird immer nur alleine verwendet! Die Verwendung in Kombination mit einem der anderen vier Parameter ist nicht vorgesehen.
%... \usepackage{float} %.... \begin{figure}[H] %... \end{figure} %...
Analog bei Tabellen.
%... \usepackage{float} %... \begin{table}[H] \begin{tabular}{rcl} %... \end{tabular} \end{table} %....
new floats
Der \newfloat
Befehl erlaubt es, neue Gleitobjektarten zu definieren. Der Aufbau ist dabei wie folgt: \newfloat{Name}{Platzierung}{Dateierweiterung}[Zählerrücksetzpunkt]
, der Name steht dabei für die Art zum Beispiel Programm, bei der Platzierung können die entsprechenden Parameter (t, b, p und / oder h) gesetzt werden, bei der Dateierweiterung handelt es sich um die Dateiendung für die neue Hilfsdatei, die für diese neue Gleitobjektart angelegt wird, und optional besitzt der Befehl auch noch die Möglichkeit einen Rücksetzpunkt für den Zähler anzugeben, im Fall von der article
Klasse ist das im Allgemein section
und bei book
beziehungsweise report
Klasse ist es chapter
.
\documentclass{article} \usepackage[utf8]{inputenc} %... \usepackage{float} %... \newfloat{Beispiel}{H}{lob}[section] %... \begin{document} %... \section{Floats} %... \begin{Beispiel} ....Text.... \caption{Ein Beispiel für newfloat} \end{Beispiel} %... \listof{Beispiel}{Liste der Beispiele} %... \end{document}
Im Zusammenhang mit \newfloat
gibt es noch weitere neue Befehle.
\floatstyle
Mit\floatstyle{Argument}
kann das Aussehen der Ausgabe des Gleitobjektes verändert werden. Dabei stehen die folgenden Varianten zur Verfügung:plain
Ausgabe ähnlich wie im LaTeX Standard, mit dem einzigen Unterschied, dass die Beschriftung immer unterhalb des Körpers des Gleitobjektes steht.plaintop
Wieplain
außer das hier die Beschriftung immer oben steht.boxed
Der Körper des Gleitobjektes wird von einem Rahmen umgeben. Und die Beschriftung ist unterhalb des Rahmens.ruled
Mit Strichen eingefasste Darstellung des Gleitobjektes.
\floatname
Damit wird die Bezeichnung in der Ausgabe festgelegt, bei derfigure
ist das zum Beispiel Abbildung. Verwendet wird der Befehl dann so:\floatname{Name der Art}{Gewünschte Ausgabe}
also zum Beispiel\floatname{Beispiel}{Beispiele}
.\floatplacement
Ermöglicht es eine Platzierungsvorgabe für alle Gleitobjekte eines Typs zu setzen. Zum Beispiel setzt\floatplacement{figure}{H}
bei allen nachfolgendenfigure
Umgebungen die Platzierung auf H also hier.\restylefloat
Damit kann das Aussehen von bestehenden Gleitobjektarten verändert werden (siehe auchfloatstyle
).\floatstyle{ruled} \restylefloat{table}
Bei selbst angelegten Arten sollte aber die Sternvariante des Befehls verwendet werden, also\restyle*{Beispiel}
.\floatstyle{boxed} \restylefloat*{Beispiel}
\listof
Der Befehl wird zum Erzeugen der Verzeichnisse der neuen Gleitobjektarten verwendet, zum Beispiel\listof{Gleitobjekt Art}{Titel des Verzeichnis}
.%... \listof{Beispiel}{Liste der Beispiele} %...
.
\documentclass{article} \usepackage[utf8]{inputenc} %... \usepackage{float} %... \newfloat{Beispiel}{H}{lob}[section] %... \floatstyle{boxed} \restylefloat*{Beispiel} \begin{document} %... \section{Floats} %... \begin{Beispiel} ....Text.... \caption{Ein Beispiel für newfloat} \end{Beispiel} %... \listof{Beispiel}{Liste der Beispiele} %... \end{document}
Wird hier verwendet:
LaTeX_Abbildungen_zwischen_Text