% % This is file `caption-deu.tex'. % % Copyright (C) 1994-2020 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm) % % -------------------------------------------------------------------------- % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3 % of this license or (at your option) any later version. % The latest version of this license is in % http://www.latex-project.org/lppl.txt % and version 1.3 or later is part of all distributions of LaTeX % version 2003/12/01 or later. % % This work has the LPPL maintenance status "maintained". % % This Current Maintainer of this work is Axel Sommerfeldt. % % This work consists of the files % caption.ins, caption.dtx, caption-light.dtx, caption2.dtx, caption3.dtx, % caption-ams-smf.dtx, caption-beamer.dtx, caption-elsarticle.dtx, % caption-koma.dtx, caption-memoir.dtx, caption-ntg.dtx, % caption-thesis.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, % the derived files % caption.sty, caption-light.sty, caption2.sty, caption3.sty, % caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto, % caption-koma.sto, caption-memoir.sto, caption-ntg.sto, % caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty, % and the user manuals % caption-deu.tex, caption-eng.tex, caption-rus.tex. % \NeedsTeXFormat{LaTeX2e}[1994/12/01] \ProvidesFile{caption-deu.tex}[2020/08/22 v3.4 Das caption-Paket] \hbadness=9999 \newcount\hbadness \hfuzz=20pt % Make TeX shut up. %\errorcontextlines=3 \RequirePackage{fix-cm} \documentclass[german]{ltxdoc} \setlength\parindent{0pt} \setlength\parskip{\smallskipamount} \setlength\leftmargini{2em}% default = 2.5em \makeatletter\g@addto@macro\MacroFont{\normalcolor}\makeatother \newcommand\LineBreak{\linebreak[3]} \newcommand\PageBreak{\pagebreak[3]} \usepackage{ifpdf} \ifpdf \usepackage{mathptmx,courier} \usepackage[scaled=0.90]{helvet} \addtolength\marginparwidth{15pt} \ifdim\paperheight=297mm % a4paper \renewcommand\LineBreak{\\} \renewcommand\PageBreak{\clearpage} \fi \fi \usepackage[T1]{fontenc} \usepackage[german]{babel} %\selectlanguage{german} %\input dehyphtex.tex \usepackage{selinput}\SelectInputMappings{adieresis={ä},germandbls={ß}} \usepackage[bottom]{footmisc} \usepackage{graphicx,longtable,setspace} \usepackage{hypdoc} \ifpdf\usepackage{hypdestopt}\fi \hypersetup{pdfkeywords={LaTeX, package, caption},pdfstartpage={},pdfstartview={}} \hypersetup{breaklinks=true} \usepackage[listof=0,hypcap=false]{caption}[2008/04/01] \DeclareRobustCommand*\eTeX{\texorpdfstring {\leavevmode\hbox{$\varepsilon$}-\TeX}% {e-TeX}} \DeclareRobustCommand*\AmS{\texorpdfstring {{\protect\usefont{OMS}{cmsy}{m}{n}A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}% {AMS}} \DeclareRobustCommand*\KOMAScript{\texorpdfstring {\textsf{K\kern.05em O\kern.05em M\kern.05em A\kern.1em-\kern.1em Script}}% {KOMA-Script}} \DeclareRobustCommand*\NTG{NTG} \DeclareRobustCommand*\SmF{SMF} \usepackage{marvosym} \makeatletter \newcommand*\INFO{\@ifstar{\@INFO{}}{\@INFO{\vbox to \ht\strutbox}}} \newcommand*\@INFO[1]{\MARGINSYM{#1{\LARGE\Info}}} \makeatother \newcommand*\MARGINSYM[1]{\hskip 1sp \marginpar{\raggedleft\textcolor{blue}{{#1}}}} \newcommand*\NEW[2]{}%\hskip 1sp \marginpar{\footnotesize\sffamily\raggedleft#1\\#2}} % \ContinuedFloat \DeclareCaptionLabelFormat{continued1}{#1~#2 (Fortsetzung)} \DeclareCaptionLabelFormat{continued2}{#1~#2\alph{ContinuedFloat}} % \DeclareCaptionLabelFormat \DeclareCaptionLabelFormat{bf-parens}{(\textbf{#2})} % \DeclareCaptionStyle \DeclareCaptionStyle{mystyle}[margin=5mm,justification=centering]% {font=footnotesize,labelfont=sc,margin={10mm,0mm}} % Example 1 \DeclareCaptionFormat{myformat1}{#1#2\\#3} \newlength\myindention \DeclareCaptionFormat{myformat2}{#1#2\\\hspace*\myindention#3} \DeclareCaptionOption{myindention}{\setlength\myindention{#1}} % Example 2 \DeclareCaptionFormat{reverse}{#3#2#1} \DeclareCaptionLabelFormat{fullparens}{(\bothIfFirst{#1}{~}#2)} \DeclareCaptionLabelSeparator{fill}{\hfill} % Example 3 \DeclareCaptionFormat{llap}{\llap{#1#2}#3\par} \DeclareCaptionFormat{llapx}{\llap{\makebox[2.5cm][l]{#1}}#3\par} % Example 4 \DeclareCaptionLabelFormat{andtable}{#1~#2 \& \tablename~\thetable} \newcommand*\purerm[1]{{\upshape\mdseries\rmfamily #1}} \newcommand*\puresf[1]{{\upshape\mdseries\sffamily #1}} \newcommand*\purett[1]{{\upshape\mdseries\ttfamily #1}} \let\class\puresf \let\package\puresf \newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}} \newcommand*\csoarg[1]{\texttt{\char`\[#1\char`\]}} \newcommand*\version[2][]{$v#2$} \newcommand*\x{\discretionary{}{}{}} \newenvironment{Annotation}% {\ifvmode\else\unskip\par\fi\pagebreak[2]% \smallskip \small(\ignorespaces}{\unskip)\par} \newenvironment{Annotation*}% {\ifvmode\else\unskip\par\fi\pagebreak[2]% \small(\ignorespaces}{\unskip)\par} \newenvironment{Example}% {\ifvmode\else\unskip\par\fi\pagebreak[2]% \minipage{\linewidth}\smallskip}% {\smallskip\endminipage\par} \makeatletter \newcommand\example{\@ifstar {\@example{belowskip=\abovecaptionskip}}% {\@example{}}} \def\@example#1{% \@testopt{\@@example{#1}}{figure}} \long\def\@@example#1[#2]#3#4{% \begingroup \captionsetup{#1,size=small,margin={\leftmargini,10pt},#3}% \captionof{#2}[]{#4}% \endgroup} \makeatother \newenvironment{Expert}% {\ifvmode\else\unskip\par\fi\pagebreak[3]% \smallskip \footnotesize\ignorespaces}{\par} \newenvironment{Expert*}% {\ifvmode\else\unskip\par\fi\pagebreak[3]% \footnotesize\ignorespaces}{\par} \newenvironment{Note}[1][\DefaultNoteText]% {\ifvmode\else\unskip\par\fi \smallskip \small\emph{#1:}~\ignorespaces}{\par} \newenvironment{Note*}[1][\DefaultNoteText]% {\ifvmode\else\unskip\par\fi \small\emph{#1:}~\ignorespaces}{\par} \newenvironment{Options}[1]% {\list{}{\renewcommand\makelabel[1]{\texttt{##1}\hfil}% \settowidth\labelwidth{\texttt{#1\space}}% \setlength\leftmargin{10pt}% \addtolength\leftmargin{\labelwidth}% \addtolength\leftmargin{\labelsep}}}% {\endlist} \makeatletter \def\Ref{\@ifstar{\@Ref\ref}{\@Ref\autoref}} \def\@Ref#1#2{#1{#2}: \textit{\nameref{#2}}} \newcommand*\SEE[3][]{\nopagebreak{#1(#2 #3)}} \newcommand*\SeeUserDefined[1][]{\See{\Ref{declare}#1}} \makeatother \begin{document} \let\subsectionautorefname\sectionautorefname \let\subsubsectionautorefname\sectionautorefname \def\thispackage{das \package{caption}"=Paket} \def\Thispackage{Das \package{caption}"=Paket} \newcommand*\DefaultNoteText{Hinweis} \newcommand*\NEWfeature{\NEW{Neues Feature}} \newcommand*\NEWdescription{\NEW{Neue Beschreibung}} \makeatletter \newcommand*\See{\@ifstar{\SEE{Siehe}}{\SEE[\small]{Siehe}}} \newcommand*\see{\@ifstar{\SEE{siehe}}{\SEE[\small]{siehe}}} \makeatother % --------------------------------------------------------------------------- % \GetFileInfo{caption-deu.tex} \let\docdate\filedate \let\docdate\filedate \let\docversion\fileversion \GetFileInfo{caption.sty} \title{Anpassen der Abbildungs- und Tabellenbeschriftungen\texorpdfstring{% \thanks{Dieses Paket hat Versionsnummer \docversion.}}{}} \author{Axel Sommerfeldt\\ \url{https://gitlab.com/axelsommerfeldt/caption}} \date{\docdate} \maketitle % --------------------------------------------------------------------------- % \begin{abstract} \Thispackage\ bietet einem Mittel und Wege, das Erscheinungsbild der Bild- und Tabellenbeschriftungen den eigenen Wünschen bzw.\ Vorgaben anzupassen. Hierbei wurde Wert auf die reibungslose Zusammenarbeit mit zahlreichen Dokumentenklassen und Paketen gelegt. \iffalse \par\smallskip \textit{Bitte beachten Sie:} Viele Dokumentenklassen bieten bereits Optionen und Befehle, um das Erscheinungsbild der Abbildungs- und Tabellenbeschriftungen individuell anzupassen. Wenn diese Möglichkeiten für Sie ausreichend sind, gibt es in der Regel keinen Grund, \thispackage\ zu benutzen. Und falls Sie lediglich an dem Befehl |\caption|\-|of| interessiert sind, ist in der Regel das Laden des kleinen aber feinen \package{capt-of}"=Paketes hierzu völlig ausreichend. \fi \end{abstract} \newcommand\exampletext{% Die auf die Rotationsfrequenz des Innenzylinders normierten Eigenfrequenzen der gefundenen Grundmoden der Taylor"=Strömung f"ur \mbox{$\eta = 0.5$}. %\\ (Die azimutale Wellenzahl ist mit $m$ bezeichnet.)} % --------------------------------------------------------------------------- % \section*{Status dieses Dokumentes} Diese Dokumentation ist veraltet. Sie dokumentiert die in Version \version{3.1} des \package{caption}"=Paketes verfügbaren Optionen und Befehle, jedoch nicht, was in folgenden Versionen hinzugefügt wurde. Warum? \begin{itemize} \item Ich war nicht glücklich mit der Struktur der Dokumentation und wollte sie daher neu schreiben. Warum also eine aufgegebene Version der Dokumentation pflegen? (Leider hatte ich aber nie die Zeit gefunden, die neue Version zu schreiben.) \item Da meine Freizeit seit dem Release der Version \version{3.1} nur spärlich vorhanden war, wollte ich die Veröffentlichung von Verbesserungen und Erweiterungen nicht aufgrund fehlender Dokumentation um Monate verzögern. \item Da ich früher Fehlerkorrekturen nur in der aktuellen Entwicklungsversion vorgenommen hatte, wollte ich die Veröffentlichung von Korrekturen nicht aufgrund fehlender Dokumentation um Monate verzögern. (Seit 2015 werden Fehler in der Regel auch für die letzte Release"=Version behoben und auf CTAN veröffentlicht.) \end{itemize} Wie geht es nun weiter? \begin{itemize} \item Ich werde in den nächsten Wochen starten, die Dokumentation (endlich) zu aktualisieren. \item Bis die überarbeitete Version fertig und auf CTAN zu finden ist, kann jederzeit der aktuelle Zwischenstand über \url{https://gitlab.com/axelsommerfeldt/caption/-/blob/master/doc/caption-eng.pdf} bezogen werden. (Zunächst wird die englischsprachige Dokumentation überarbeitet, und erst anschließend die deutschsprachige.) \end{itemize} % --------------------------------------------------------------------------- % \section*{Einleitung} Mit |\caption| gesetzte Bildunterschriften und Tabellenüberschriften werden von den Standard"=Dokumentenklassen eher stiefmütterlich behandelt. In der Regel schlicht als ganz normaler Absatz gesetzt, ergibt sich keine signifikante optische Abgrenzung vom eigentlichen Text, wie z.B. hier: \example*{size=normalsize,margin=0pt}{\exampletext} Es sollte aber eine Möglichkeit geben, diesem Umstand abzuhelfen. Es wäre zum Beispiel nett, wenn man den Text der Unterschrift etwas kleiner gestalten, extra Ränder festlegen oder den Zeichensatz des Bezeichners dem der Kapitelüberschriften anpassen könnte. So in etwa: \example*{size=small,margin=10pt,labelfont=bf,labelsep=endash}{\exampletext} Mit Hilfe dieses Paketes können Sie dies leicht bewerkstelligen; es sind viele vorgegebene Parameter einstellbar, Sie können aber auch eigene Gestaltungsmerkmale einfließen lassen. \bigskip \INFO\begin{minipage}[t]{\textwidth} \small Bitte beachten Sie, daß \thispackage\ nur das Aussehen der Beschriftungen kontrolliert. Es kontrolliert \emph{nicht} den Ort der Beschriftung; dieser kann aber mit anderen Paketen wie etwa dem \package{floatrow}"=Paket\cite{floatrow} variiert werden. \end{minipage} % --------------------------------------------------------------------------- % \clearpage \tableofcontents % --------------------------------------------------------------------------- % \clearpage \section{Verwendung des Paketes} \label{usage} \DescribeMacro{\usepackage} Durch \begin{quote} |\usepackage|\oarg{Optionen}|{caption}[|\texttt{\filedate}|]| \end{quote} in dem Vorspann des Dokumentes wird das \thispackage\ Paket eingebunden, die Optionen legen hierbei das Aussehen der Über- und Unterschriften fest. So würde z.B. \begin{quote} |\usepackage[margin=10pt,font=small,labelfont=bf,|\\ | labelsep=endash]{caption}|% %|[|\texttt{\filedate}|]| \end{quote} zu dem obrigen Ergebnis mit Rand, kleinerem Zeichensatz und fetter Bezeichnung führen. \DescribeMacro{\captionsetup} Eine Änderung der Parameter ist auch zu einem späteren Zeitpunkt jederzeit mit dem Befehl \begin{quote} |\captionsetup|\oarg{Typ}\marg{Optionen} \end{quote} möglich. So sind z.B. die Befehlssequenzen \begin{quote} |\usepackage[margin=10pt,font=small,labelfont=bf]{caption}| \end{quote} und \begin{quote} |\usepackage{caption}|\\ |\captionsetup{margin=10pt,font=small,labelfont=bf}| \end{quote} in ihrer Wirkung identisch. Es ist zu beachten, daß sich die Verwendung von |\caption|\-|setup| innerhalb von Umgebungen nur auf die Umgebung selber auswirkt, nicht aber auf den Rest des Dokumentes. Möchte man also z.B. die automatische Zentrierung der Abbildungsunterschrift nur in einem konkreten Falle ausschalten, so kann dies mit \begin{quote} |\begin{figure}|\\ | |\ldots\\ | \captionsetup{singlelinecheck=off}|\\ | \caption{|\ldots|}|\\ |\end{figure}| \end{quote} geschehen, ohne daß die restlichen Abbildungsunterschriften hiervon beeinträchtigt werden. \begin{Annotation} Der optionale Parameter \meta{Typ} von |\caption|\-|setup| wird in \Ref{captionsetup} behandelt. \end{Annotation} % --------------------------------------------------------------------------- % \clearpage \section{Optionen} \label{options} \def\OptionLabel{RaggedRight} \def\UserDefined{\ldots} % --------------------------------------------------------------------------- % \subsection{Formatierung} \label{formats} \DescribeMacro{format=} Eine Abbildungs- oder Tabellenbeschriftung besteht im wesentlichen aus drei Teilen: Dem Bezeichner (etwa "`Abbildung 3"'), dem Trenner (etwa "`:\textvisiblespace"') und dem eigentlichen Text. Mit der Option \begin{quote} |format=|\meta{Name} \end{quote} wird festgelegt, wie diese drei Teile zusammengesetzt werden. Für \meta{Name} sind folgende Möglichkeiten verfügbar:%~\footnote{Es gibt %hier wie auch bei vielen anderen Optionen die Möglichkeit, auch eigene %Formate, Zeichensätze etc.\ zu definieren. Wie dies geht wird in Abschnitt %\Ref{declare} dargelegt.} \begin{Options}{\OptionLabel} \item[plain]%\NEWdescription{v3.0h} Die Beschriftung wird als gewöhnlicher Absatz gesetzt. \item[hang] Der Text wird so gesetzt, daß er an dem Bezeichner "`hängt"', d.h.~der Platz unter dem Bezeichner und dem Trenner bleibt leer. \item[\UserDefined] Eigene Formate können mit |\Declare|\-|Caption|\-|Format| definiert werden. \SeeUserDefined \end{Options} \begin{Example} Ein Beispiel: Die Angabe der Option \begin{quote} |format=hang| \end{quote} führt zu Abbildungsunterschriften der Art \example{format=hang}{\exampletext} \end{Example} \pagebreak[3] \DescribeMacro{indention=} Bei beiden Formaten (\texttt{plain} und \texttt{hang}) kann der Einzug der Beschriftung ab der zweiten Textzeile angepasst werden, dies geschieht mit \begin{quote} |indention=|\meta{Einzug}\quad, \end{quote} wobei anstelle von \meta{Einzug} jedes beliebige feste Maß angegeben werden kann. Zwei Beispiele: \begin{Example} \begin{quote} |format=plain,indention=.5cm| \end{quote} \captionsetup{skip=0pt} \example{format=plain,indention=.5cm}{\exampletext} \end{Example} \begin{Example} \begin{quote} |format=hang,indention=-0.5cm| \end{quote} \captionsetup{skip=0pt} \example{format=hang,indention=-0.5cm}{\exampletext} \end{Example} \bigskip \pagebreak[3] \DescribeMacro{labelformat=} Mit der Option \nopagebreak[3] \begin{quote} |labelformat=|\meta{Name} \end{quote} \nopagebreak[3] %\NEWdescription{v3.0e} wird die Zusammensetzung des Bezeichners festgelegt. Für \meta{Name} sind folgende Möglichkeiten verfügbar: \begin{Options}{\OptionLabel} \item[default] Der Bezeichner wird wie von der verwendeten Dokumentenklasse vorgegeben gesetzt, üblicherweise ist dies der Name und die Nummer, getrennt durch ein Leerzeichen (wie \texttt{simple}). (Dies ist das Standardverhalten.) \item[empty] Der Bezeichner ist leer. \iffalse (Diese Option macht in der Regel nur in Verbindung mit anderen Optionen -- wie etwa \texttt{labelsep=none} -- Sinn.) \fi \item[simple] Der Bezeichner ist aus dem Namen und der Nummer zusammengesetzt. \item[brace]\NEWfeature{v3.1f} Der Bezeichner wird mit einer einzelnen (rechten) Klammer abgeschlossen. \item[parens] Die Nummer des Bezeichners wird in runde Klammern gesetzt. \item[\UserDefined] Eigene Formate können mit |\Declare|\-|Caption|\-|Label|\-|Format| definiert werden. \SeeUserDefined \end{Options} \begin{Example} Ein Beispiel: Die Optionen \begin{quote} |format=plain,labelformat=parens,labelsep=quad| \end{quote} führen zu Abbildungsunterschriften der Art \example{format=plain,labelformat=parens,labelsep=quad}{\exampletext} \end{Example} \medskip \begin{Note*} Manche Umgebungen, wie z.B.~die vom \package{algorithm2e}"=Paket angebotende |al|\-|go|\-|rithm|"=Umgebung, reagieren allergisch auf eine Änderung des Bezeichnerformats. \end{Note*} \bigskip \pagebreak[3] \DescribeMacro{labelsep=} Mit der Option \begin{quote} |labelsep=|\meta{Name} \end{quote} wird die Zusammensetzung des Trenners festgelegt.\footnote{% Wenn der Bezeichner oder der Text der Beschriftung leer ist, wird kein Trenner verwendet.} Für \meta{Name} sind folgende Möglichkeiten verfügbar: \begin{Options}{\OptionLabel} \item[none] Der Trenner ist leer. \iffalse (Diese Option macht in der Regel nur in Verbindung mit anderen Optionen -- wie etwa \texttt{labelformat=empty} -- Sinn.) \fi \item[colon] Der Trenner besteht aus einem Doppelpunkt und einem Leerzeichen. \item[period] Der Trenner besteht aus einem Punkt und einem Leerzeichen. \item[space] Der Trenner besteht lediglich aus einem einzelnen Leerzeichen. \item[quad] Der Trenner besteht aus einem |\quad|. \item[newline] Als Trenner wird ein Zeilenumbruch (|\\|) verwendet. Bitte beachten Sie, daß dieser Trenner nicht mit allen Formaten (z.B.~|format=|\x|hang|) zusammenarbeitet; ggf. erhalten Sie deswegen eine Fehlermeldung. \item[endash]\NEWfeature{v3.0h} Als Trenner wird ein Gedankenstrich (\verb*| -- |) verwendet. \item[\UserDefined] Eigene Trenner können mit |\Declare|\-|Caption|\-|Label|\-|Sep|\-|a|\-|ra|\-|tor| definiert werden. \SeeUserDefined \end{Options} Drei Beispiele: \begin{Example} \begin{quote} |format=plain,labelsep=period| \end{quote} \captionsetup{skip=0pt} \example{format=plain,labelsep=period}{\exampletext} \end{Example} \begin{Example} \begin{quote} |format=plain,labelsep=newline,singlelinecheck=false| \end{quote} \captionsetup{skip=0pt} \example{format=plain,labelsep=newline,singlelinecheck=false}{\exampletext} \end{Example} \begin{Example} \begin{quote} |format=plain,labelsep=endash| \end{quote} \captionsetup{skip=0pt} \example{format=plain,labelsep=endash}{\exampletext} \end{Example} \bigskip \pagebreak[3] \DescribeMacro{textformat=}\NEWfeature{v3.0l} Mit der Option \nopagebreak[3] \begin{quote} |textformat=|\meta{Name} \end{quote} \nopagebreak[3] wird das Format des eigentlichen Textes festgelegt. Für \meta{Name} sind folgende Möglichkeiten verfügbar: \begin{Options}{\OptionLabel} \item[empty] Es wird kein Text ausgegeben. \item[simple] Der Text wird nicht verändert. \item[period] Dem Text wird ein Punkt angehängt. \item[\UserDefined] Eigene Textformate können mit |\Declare|\-|Caption|\-|Text|\-|Format| definiert werden. \SeeUserDefined \end{Options} % --------------------------------------------------------------------------- % \PageBreak \subsection{Textausrichtung} \label{justification} \DescribeMacro{justification=} Mit der Option \begin{quote} |justification=|\meta{Name} \end{quote} wird die Ausrichtung des Textes festgelegt. Für \meta{Name} sind folgende Möglichkeiten verfügbar: \begin{Options}{\OptionLabel} \item[justified] Der Text wird als Blocksatz gesetzt. \item[centering] Der Text wird zentriert gesetzt. % \item[Centering] % Der Text wird zentriert gesetzt. Hierfür wird jedoch im Gegensatz % zu \texttt{centering} der Befehl |\Centering| des \package{ragged2e}-Paketes % verwendet, der \LaTeX\ das Trennen der Worte erlaubt. \item[centerlast] Lediglich die letzte Zeile des Absatzes wird zentriert gesetzt. \item[centerfirst] Lediglich die erste Zeile des Textes wird zentriert gesetzt. \item[raggedright] Der Text wird linksbündig gesetzt. \iffalse \item[RaggedRight] Der Text wird linksbündig mit Hilfe des \package{ragged2e}-Paketes gesetzt. \else \item[RaggedRight] Der Text wird ebenfalls linksbündig gesetzt. Hierfür wird jedoch im Gegensatz zur Option |raggedright| der Befehl |\RaggedRight| des \package{ragged2e}-Paketes verwendet, der \LaTeX\ das Trennen der Worte erlaubt.\footnote{% Ob das \package{ragged2e}"=Paket benötigt wird oder nicht, wird zur Laufzeit ermittelt, d.h.~ggf.~ist ein weiterer \LaTeX"=Lauf erforderlich, wenn diese Option erstmalig eingesetzt wird.} \fi \item[raggedleft] Der Text wird rechtsbündig gesetzt. % \item[RaggedLeft] % Der Text wird rechtsbündig mit Hilfe des \package{ragged2e}-Paketes gesetzt. %\showhyphens{justification} \item[\UserDefined] Eigene Ausrichtungen können mit |\Declare|\-|Caption|\-|Jus|\-|ti|\-|fi|\-|ca|\-|tion| definiert werden. \SeeUserDefined \end{Options} Drei Beispiele: \begin{Example} \begin{quote} |format=plain,justification=centerlast| \end{quote} \captionsetup{skip=0pt} \example{format=plain,justification=centerlast}{\exampletext} \end{Example} \begin{Example} \begin{quote} |format=hang,justification=raggedright| \end{quote} \captionsetup{skip=0pt} \example{format=hang,justification=raggedright}{\exampletext} \end{Example} \begin{Example} \begin{quote} |format=plain,labelsep=newline,justification=centering| \end{quote} \captionsetup{skip=0pt} \example*{format=plain,labelsep=newline,justification=centering}{\exampletext} \end{Example} \smallskip \PageBreak \DescribeMacro{singlelinecheck=} In den Standard"=Dokumentenklassen von \LaTeX\ (\class{article}, \class{report} und \class{book}) sind die Ab\-bildungs- und Tabellenbeschriftungen so realisiert, daß sie automatisch zentriert werden, wenn sie lediglich aus einer einzigen Textzeile bestehen: \example*{}{Eine kurze Beschriftung.} \INFO Diesen Mechanismus übernimmt \thispackage\ und ignoriert damit in der Regel bei solch kurzen Beschriftungen die mit den Optionen |justification=| und |indention=| eingestellte Textausrichtung. Dieses Verhalten kann jedoch mit der Option \begin{quote} |singlelinecheck=|\meta{bool} \end{quote} reguliert werden. Setzt man für \meta{bool} entweder |false|, |no|, |off| oder |0| ein, so wird der automatische Zentrierungsmechnismus außer Kraft gesetzt. Die obrige, kurze Abbildungsunterschrift würde z.B.~nach Angabe der Option \begin{quote} |singlelinecheck=false| \end{quote} so aussehen: \begingroup \captionsetup{type=figure} \ContinuedFloat \example*{singlelinecheck=false}{Eine kurze Beschriftung.} \endgroup Setzt man für \meta{bool} hingegen |true|, |yes|, |on| oder |1| ein, so wird die automatische Zentrierung wieder eingeschaltet. (Standardmäßig ist sie eingeschaltet.) % --------------------------------------------------------------------------- % \subsection{Zeichensätze} \label{fonts} \DescribeMacro{font=} \DescribeMacro{labelfont=} \DescribeMacro{textfont=} \Thispackage\ kennt drei Zeichensätze: Denjenigen für die gesammte Beschriftung (|font|), denjenigen, der lediglich auf den Bezeichner und den Trenner angewandt wird (|label|\-|font|), sowie denjenigen, der lediglich auf den Text wirkt (|text|\-|font|). So lassen sich die unterschiedlichen Teile der Beschriftung individuell mit \begin{quote}\begin{tabular}{@{}r@{}ll} |font=| & \marg{Zeichensatzoptionen} & ,\\ |labelfont=| & \marg{Zeichensatzoptionen} & und\\ |textfont=| & \marg{Zeichensatzoptionen} & \\ \end{tabular}\end{quote} \nopagebreak[3] anpassen. \pagebreak[3] Als \meta{Zeichensatzoptionen} sind Kombinationen aus folgenden (durch Komma getrennte) Optionen möglich: \begin{Options}{stretch=\meta{amount}} \item[scriptsize] {\scriptsize Sehr kleine Schrift} \item[footnotesize] {\footnotesize Fußnotengröße} \item[small] {\small Kleine Schrift} \item[normalsize] {\normalsize Normalgroße Schrift} \item[large] {\large Große Schrift} \item[Large] {\Large Größere Schrift} \end{Options} \vspace{0pt}\pagebreak[3] \begin{Options}{stretch=\meta{amount}} \item[normalfont] {\normalfont Normale Schriftart \& -serie \& -familie} \item[up] {\upshape Upright Schriftart} \item[it] {\itshape Italic Schriftart} \item[sl] {\slshape Slanted Schriftart} \item[sc] {\scshape Small Caps Schriftart} \item[md] {\mdseries Medium Schriftserie} \item[bf] {\bfseries Bold Schriftserie} \item[rm] {\rmfamily Roman Schriftfamilie} \item[sf] {\sffamily Sans Serif Schriftfamilie} \item[tt] {\ttfamily Typewriter Schriftfamilie} \end{Options} \vspace{0pt}\pagebreak[3] \begin{Options}{stretch=\meta{amount}} \item[singlespacing] Einfacher Zeilenabstand \See{\Ref{setspace}} \item[onehalfspacing] Eineinhalbfacher Zeilenabstand \See{\Ref{setspace}} \item[doublespacing] Doppelter Zeilenabstand \See{\Ref{setspace}} \item[stretch=\meta{amount}] |\setstretch|\marg{amount} \See{\Ref{setspace}} \end{Options} \vspace{0pt}\pagebreak[3] \begin{Options}{stretch=\meta{amount}} \item[normalcolor] |\normalcolor| \item[color=\meta{colour}] |\color|\marg{colour} {\small(Sofern das \package{color}- oder das \package{xcolor}"=Paket geladen ist; für ein Beispiel siehe \Ref{declare})} \end{Options} \vspace{0pt}\pagebreak[3] \begin{Options}{stretch=\meta{amount}} \item[normal] Die Kombination aus den Optionen |normal|\-|color|, |normal|\-|font|, |normal|\-|size| und |single|\-|spacing| \item[\UserDefined] Eigene Zeichensatzoptionen können mit |\Declare|\-|Caption|\-|Font| definiert werden. \SeeUserDefined \end{Options} Wird lediglich eine einzelne Zeichensatzoption ausgewählt, können die geschweiften Klammern entfallen, d.h.~die Optionen %\begin{quote} |font={small}| %\end{quote} und %\begin{quote} |font=small| %\end{quote} sind identisch. Drei Beispiele: \begin{Example} \begin{quote} |font=it,labelfont=bf| \end{quote} \captionsetup{skip=0pt} \example{font=it,labelfont=bf}{\exampletext} \end{Example} \begin{Example} \begin{quote} |labelfont=bf,textfont=it| \end{quote} \captionsetup{skip=0pt} \example{labelfont=bf,textfont=it}{\exampletext} \end{Example} \begin{Example} \begin{quote} |font={small,stretch=0.80}| \end{quote} \captionsetup{skip=0pt} \example{font={small,stretch=0.80}}{\exampletext} \end{Example} \medskip \pagebreak[3] \DescribeMacro{font+=} \DescribeMacro{labelfont+=} \DescribeMacro{textfont+=} \NEWfeature{v3.1f} Es ist auch möglich, Zeichensatzoptionen zu den bisher ausgewählten hinzuzufügen, so ist zum Beispiel \begin{quote} |\captionsetup{font=small}|\\ |\captionsetup{font+=it}| \end{quote} mit \begin{quote} |\captionsetup{font={small,it}}| \end{quote} \nopagebreak[3] identisch. \pagebreak[3] % --------------------------------------------------------------------------- % \subsection{Ränder und Absätze} \label{margins} \DescribeMacro{margin=} \DescribeMacro{width=} Für die Abbildungs- und Tabellenbeschriftungen kann \emph{entweder} ein extra Rand \emph{oder} eine feste Breite festgelegt werden:~\footnote{Nur feste Maße sind hier gestattet. Suchen Sie nach einem Weg, die Breite automatisch auf die Breite der Abbildung oder Tabelle zu begrenzen, schauen Sie sich bitte das \package{floatrow}\cite{floatrow} oder \package{threeparttable}"=Paket\cite{threeparttable} an.} \begin{quote}\begin{tabular}{@{}r@{}ll} |margin=| & \meta{Rand} & \emph{-- oder --}\\ |margin=| & |{|\meta{Linker Rand}|,|\meta{Rechter Rand}|}| & \emph{-- oder --}\\ |width=| & \meta{Breite} & \\ \end{tabular}\end{quote} \NEWfeature{v3.1} Wird nur ein Wert für den Rand angegeben, so wird er für beide Ränder (links und rechts) verwendet, so ist z.B.~|margin=|\x|10pt| identisch mit |margin=|\x|{10pt,10pt}|. In zweiseitigen Dokumenten wird der linke und rechte Rand auf geraden Seiten vertauscht. \DescribeMacro{oneside} \DescribeMacro{twoside} Dies kann jedoch mit der zusätzlichen Option |oneside| abgeschaltet werden, z.B.~|\caption|\-|setup{margin=|\x|{0pt,10pt},|\x|oneside}|.\par Wird hingegen eine \meta{Breite} angegeben, wird die Beschriftung zentriert, d.h.~der linke und rechte Rand sind in diesem Falle immer gleich groß. Drei Beispiele illustrieren dies: \begin{Example} \begin{quote} |margin=10pt| \end{quote} \captionsetup{skip=0pt} \example{margin=10pt}{\exampletext} \end{Example} \begin{Example} \begin{quote} |margin={1cm,0cm}| \end{quote} \captionsetup{skip=0pt} \example{margin={1cm,0cm}}{\exampletext} \end{Example} \begin{Example} \begin{quote} |width=.75\textwidth| \end{quote} \captionsetup{skip=0pt} \example{width=.75\textwidth}{\exampletext} \end{Example} \begin{Note} Wird die Beschriftung neben der Abbildung bzw.~Tabelle angebracht (z.B.~mit Hilfe der |SC|\-|figure|"=Umgebung des \package{sidecap}"=Paketes\cite{sidecap}), oder wird die Abbildung bzw.~Tabelle innerhalb eines Absatzes gesetzt (z.B.~mit Hilfe der |wrap|\-|figure|"=Umgebung des \package{wrapfig}"=Paketes\cite{wrapfig}), dann wird der Rand am Anfang der Umgebung automatisch auf |0pt| zurückgesetzt. Soll hier ebenfalls ein extra Rand gesetzt werden, so kann dieser Rand entweder innerhalb der Umgebung neu gesetzt werden, oder aber global für bestimmte Umgebungen, z.B.~mit |\caption|\-|setup[SC|\-|figure]{margin=|\x|10pt}|. \end{Note} \begin{Expert} \DescribeMacro{margin*=}\NEWfeature{v3.1} Neben der Option |margin=| gibt es auch die Option |margin*=|, die nur dann einen Rand neu setzt, wenn keine Breite mit |width=| gesetzt wurde. \end{Expert} \begin{Expert} \DescribeMacro{minmargin=} \DescribeMacro{maxmargin=}\NEWfeature{v3.1} Weiterhin kann auch ein minimaler bzw.~maximaler Rand gesetzt werden. Dies kann z.B.~sinnvoll sein, um in schmaleren Umgebungen wie |minipage|s den Rand prozentual zu begrenzen. So begrenzen z.B.~die \SmF"=Dokumentenklassen den Rand auf |maxmargin=|\x|0.1\linewidth|. (Siehe \Ref{SMF}) \end{Expert} \medskip \pagebreak[3] \DescribeMacro{parskip=} Diese Option wirkt auf Abbildungs- oder Tabellenbeschriftungen, die aus mehr als einem Absatz bestehen; sie legt den Abstand zwischen den Absätzen fest: \begin{quote} |parskip=|\meta{Abstand zwischen Absätzen} \end{quote} Ein Beispiel hierzu: \begin{Example} \begin{quote} |margin=10pt,parskip=5pt| \end{quote} \captionsetup{skip=0pt} \example{margin=10pt,parskip=5pt}{% Erster Absatz der Beschriftung; dieser enthält einigen Text, so daß die Auswirkungen der Optionen deutlich werden.\par Zweiter Absatz der Beschriftung; dieser enthält ebenfalls einigen Text, so daß die Auswirkungen der Optionen deutlich werden.} \end{Example} \pagebreak[3] \DescribeMacro{hangindent=} Die Option \begin{quote} |hangindent=|\meta{Einzug} \end{quote} legt einen Einzug für alle Zeilen außer der jeweils ersten des Absatzes fest. Besteht die Beschriftung lediglich aus einem einzelnen Absatz, so ist die Wirkung mit der Option |indention=|\meta{Einzug} identisch, bei mehreren Absätzen zeigt sich jedoch der Unterschied: \begin{Example} \begin{quote} |format=hang,indention=-.5cm| \end{quote} \captionsetup{skip=0pt} \example{format=hang,indention=-.5cm}{% Erster Absatz der Beschriftung; dieser enthält einigen Text, so daß die Auswirkungen der Optionen deutlich werden.\par Zweiter Absatz der Beschriftung; dieser enthält ebenfalls einigen Text, so daß die Auswirkungen der Optionen deutlich werden.} \end{Example} \begin{Example} \begin{quote} |format=hang,hangindent=-.5cm| \end{quote} \captionsetup{skip=0pt} \example{format=hang,hangindent=-.5cm}{% Erster Absatz der Beschriftung; dieser enthält einigen Text, so daß die Auswirkungen der Optionen deutlich werden.\par Zweiter Absatz der Beschriftung; dieser enthält ebenfalls einigen Text, so daß die Auswirkungen der Optionen deutlich werden.} \end{Example} \begin{Note} Enthält die Beschriftung mehr als einen Absatz, muß über das optionale Argument von |\caption| bzw.~|\caption|\-|of| eine alternative Beschriftung für das Abbildungs- bzw.~Tabellenverzeichnis angegeben werden; ansonsten kommt es zu einer Fehlermeldung. \end{Note} % --------------------------------------------------------------------------- % \pagebreak[3] \subsection{Stile} \label{style} \DescribeMacro{style=} Eine geeignete Kombination aus den bisher vorgestellten Optionen wird \textit{Stil} genannt; dies ist in etwa mit dem Seitenstil vergleichbar, den man mit |\page|\-|style| einstellen kann. Einen vordefinierten Abbildungs- bzw.~Tabellenbeschriftungsstil kann man mit der Option \begin{quote} |style=|\meta{Stil} \end{quote} auswählen. \Thispackage\ vordefiniert zwei Stile: |base| und |default|. \NEWfeature{v3.1} Der Stil |base| setzt alle bisher vorgestellten Optionen auf die Belegung zurück, die das Aussehen der Beschriftungen der Standard"=\LaTeX"=Dokumentenklassen |article|, |report| und |book| repräsentiert. D.h.~die Angabe der Option \begin{quote} |style=base| \end{quote} entspricht den Optionen \begin{quote} |format=plain,labelformat=default,labelsep=colon,|\\ |justification=justified,font={},labelfont={},|\\ |textfont={},margin=0pt,indention=0pt|\\ |parindent=0pt,hangindent=0pt,singlelinecheck=true|\quad. \end{quote} \begin{Annotation*} Aber |justification=centering,indention=0pt| wird automatisch gewählt werden, wenn die Beschriftung in eine einzelne Zeile passt. \end{Annotation*} Der Stil |default| hingegen folgt den Standardwerten der verwendeten Dokumentenklasse. Dieser Stil wird vorausgewählt und entspricht den Optionen \begin{quote} |format=default,labelformat=default,labelsep=default,|\\ |justification=default,font=default,labelfont=default,|\\ |textfont=default,margin=0pt,indention=0pt|\\ |parindent=0pt,hangindent=0pt,singlelinecheck=true|\quad. \end{quote} \begin{Annotation*} Auch hier wird |justification=centering,indention=0pt| automatisch gewählt werden, wenn die Beschriftung in eine einzelne Zeile passt. \end{Annotation*} Wenn also eine der drei Standard"=\LaTeX"=Dokumentenklassen verwendet wird, repräsentieren die Stile |base| und |default| (fast) die gleichen Einstellungen. \begin{Note} Eigene Stile können mit |\Declare|\-|Caption|\-|Style| definiert werden. \SeeUserDefined \end{Note} % --------------------------------------------------------------------------- % \subsection{Abstände} \label{skips} \DescribeMacro{skip=}\NEWfeature{v3.0d} Der vertikale Abstand zwischen der Beschriftung und der Abbildung bzw.~Tabelle wird über die Option \begin{quote} |skip=|\meta{Abstand} \end{quote} gesteuert. Die Standard"=\LaTeX"=Dokumentenklassen \class{article}, \class{report} und \class{book} belegen diesen Abstand auf |skip=|\x|10pt| vor, andere Dokumentenklassen ggf.~auf einen anderen Wert. \bigskip \pagebreak[3] \DescribeMacro{position=} Die von \LaTeX\ vorgegebene Implementierung von |\caption| birgt eine Design\-schwäche: Der |\caption| Befehl weiß dort nicht, ob er über oder unter der Abbildung bzw.~Tabelle steht, folglich weiß er auch nicht, wo er den Abstand zur Abbildung bzw.~Tabelle setzen soll. Während die Standard"=Implementierung den Abstand immer über die Beschriftung setzt (und inkonsequenterweise in |long|\-|table|"=Umgebungen unter die Beschriftung), handhabt es dieses Paket etwas flexibler: Nach Angabe der Option \begin{quote} |position=top|\quad oder\quad |position=above| \end{quote} wird angenommen, daß die Beschrifung am \emph{Anfang} der Umgebung steht, der mit |skip=|\x\meta{Abstand} gesetzte Abstand also unter die Beschriftung gesetzt wird. (Bitte beachten Sie, daß |position=|\x|top| keineswegs bedeutet, daß die Beschriftung an den Anfang der Gleitumgebung gesetzt wird. Stattdessen wird die Beschriftung gewöhnlich dort gesetzt, wo der |\caption|"=Befehl platziert wird.) Hingegen nach \begin{quote} |position=bottom|\quad oder\quad |position=below| \end{quote} wird angenommen, daß die Beschriftung am \emph{Ende} der Umgebung steht, der Abstand also über die Beschriftung gesetzt wird. Und letztendlich nach \begin{quote} |position=auto|\quad {\small(welches die Vorbelegung ist)} \end{quote} versucht \thispackage\ sein bestes, um die tatsächliche Position der Beschrifung selbst zu bestimmen. Bitte beachten Sie, daß dies zwar in der Regel gelingt, unter seltenen Umständen aber falsche Resultate liefern könnte. \medskip \pagebreak[3] \DescribeMacro{figureposition=}%\NEWfeature{v3.0a} \DescribeMacro{tableposition=}%\NEWfeature{v3.0a} Die Option |position| ist insbesondere in Verbindung mit dem optionalen Argument von |\caption|\-|setup| nützlich. \See{auch \Ref{captionsetup}}\par So führt zum Beispiel \begin{quote} |\captionsetup[table]{position=above}| \end{quote} dazu, daß alle Tabellenbeschriftungen als \emph{Überschriften} angesehen werden (zumindest was den Abstand zur Tabelle angeht). Weil dies eine übliche Einstellung ist, bietet einem \thispackage\ auch die Optionen |figure|\-|position=|\x\meta{Position} und |table|\-|position=|\x\meta{Position} als abkürzende Schreibweise. So ist z.B. \begin{quote} |\usepackage[|\ldots|,tableposition=top]{caption}| \end{quote} identisch mit \begin{quote} |\usepackage[|\ldots|]{caption}|\\ |\captionsetup[table]{position=top}|\quad. \end{quote} \medskip \INFO Bitte beachten Sie, daß die Optionen |skip=|, |position=|, |figure|\-|position=| und |table|\-|position=| nicht immer einen Effekt haben. Da die Gleitumgebungen üblicherweise von den Dokumentenklassen bereitgestellt werden, kann es durchaus sein, daß diese ihre eigenen Abstandsregeln mitbringen. So befolgen z.B.~die \KOMAScript"=Dokumentenklassen die |skip=| Einstellung; Abbildungsbeschriftungen werden aber immer als Unterschriften behandelt, während die Tabellenbeschriftungen von dem Gebrauch der globalen Optionen |table|\-|captions|\-|above| bzw.\ |table|\-|captions|\-|below| abhängen. \See{\Ref{KOMA}} Weiterhin kontrollieren manche Pakete, wie etwa das \package{float}-, das \package{floatrow}- und das \package{supertabular}"=Paket, die Position ihrer Abstände selber. \bigskip \begin{Expert*} Intern wird der Abstand zwischen Beschriftung und Inhalt durch die Länge |\above|\-|caption|\-|skip| repräsentiert (welche die Implementation von \LaTeX\ immer über die Beschriftung setzt). Weiterhin gibt es eine zweite Länge, |\below|\-|caption|\-|skip|, die üblicherweise auf |0pt| vorbelegt ist und den Abstand auf der anderen Seite der Beschriftung regelt. Technisch gesprochen vertauscht also \thispackage\ die Bedeutungen dieser beiden Längen wenn |position=|\x|top| gesetzt ist. Bitte beachten Sie, daß diverse andere Pakete (wie etwa das \package{ftcap}-, das \package{nonfloat}- und das \package{topcap}"=Paket) den gleichen Kniff anwenden, so daß die Benutzung solcher Pakete zusammen mit der \package{caption}"=Option |position=| nicht unterstützt wird. \end{Expert*} % --------------------------------------------------------------------------- % \subsection{Listen} \label{lists} \DescribeMacro{list=}\NEWfeature{v3.1} Der Befehl |\caption| erzeugt normalerweise auch einen Eintrag in das Abbildungs- bzw.~Tabellenverzeichnis. Dies kann durch Angabe eines leeren optionalen Argumentes unterdrückt werden {\small(siehe \Ref{caption})}, aber auch durch Angabe der Option \begin{quote} |list=no|\quad(oder |list=false| oder |list=off|)\quad.~\footnote{% Bitte beachten Sie, daß das \package{subfig}"=Paket\cite{subfig} diese Option nicht unterstützt, stattdessen sind dort ggf.~die Zähler \texttt{lofdepth} \& \texttt{lotdepth} anzupassen.} \end{quote} \pagebreak[3] \DescribeMacro{listformat=}\NEWfeature{v3.1} Mit der Option \nopagebreak[3] \begin{quote} |listformat=|\meta{Listformat} \end{quote} \nopagebreak[3] kann beeinflußt werden, wie die Abbildungs- bzw.~Tabellennummer im Abbildungs- bzw.~Tabellenverzeichnis erscheint. Es gibt fünf vordefinierte Listenformate: \begin{Options}{\OptionLabel} \item[empty] Es wird keine Nummer angegeben. \item[simple] Die Nummer wird (mit Zähler"=Prefix) angegeben. \item[parens] Die Nummer wird (mit Prefix) in Klammern angegeben. \item[subsimple] Wie |simple|, aber ohne Prefix. (Standard) \item[subparens] Wie |parens|, aber ohne Prefix. \item[\UserDefined] Eigene Listenformate können mit |\Declare|\-|Caption|\-|List|\-|Format| definiert werden. \SeeUserDefined \end{Options} Das Präfix ($=$|\p@figure| bzw.~|\p@table|), welches in Verzeichnissen (wie dem Abbildungs- und Tabellenverzeichnis) und bei Referenzen der Nummer ($=$|\the|\-|figure| bzw.~|\the|\-|table|) vorangestellt wird, ist normalerweise leer, so daß die Listenformate |simple| und |subsimple| indentische Ergebnisse abliefern; ebenso |parens| und |subparens|. Aber dies kann z.B. bei Unterabbildungen anders sein.\footnote{% Unterabbildungen können z.B.~mit dem \package{subcaption}- oder \package{subfig}"=Paket gestaltet werden.} % --------------------------------------------------------------------------- % \subsection{Namen} \label{names} \DescribeMacro{name=}\NEWfeature{v3.1f} Die Option \begin{quote} |name=|\meta{name} \end{quote} ändert den Namen der \emph{aktuellen} Umgebung. Hiermit könnte man z.B.~den Bezeichner "`Abbildung"' in allen |wrap|\-|figure|"=Umgebungen nach "`Abb."' ändern (während woanders nach-wie-vor "`Abbildung"' stehen würde): \begin{quote} |\captionsetup[wrapfigure]{name=Abb.}| \end{quote} % --------------------------------------------------------------------------- % \subsection{Typen} \label{types} \DescribeMacro{type=}\NEWfeature{v3.0d} Der |\caption| Befehl kann verschiedene Gleitumgebungstypen beschriften, Abbildungen (|figure|) ebenso wie Tabellen (|table|). Außerhalb dieser Umgebungen führt die Verwendung von |\caption| jedoch zu einer Fehlermeldung, weil nicht klar ist, zu welchem Typ die Beschriftung gehören soll. In diesen Situationen kann man den Typ manuell mit \begin{quote} |type=|\meta{Typ} \end{quote} festlegen, so daß |\caption| (und andere Befehle wie |\Continued|\-|Float| oder |\sub|\-|caption|\-|box| des \package{subcaption}"=Paketes, oder |\sub|\-|float| des \package{subfig}"=Paketes\cite{subfig}) das gewünschte Ergebnis liefern können; z.B.~innerhalb einer nicht-gleitenden Umgebung wie |minipage|: \begin{quote} |\noindent\begin{minipage}{\textwidth}|\\ | \captionsetup{type=figure}|\\ | \subfloat{|\ldots|}|\\ | |\ldots\\ | \caption{|\ldots|}|\\ |\end{minipage}| \end{quote} \begin{Expert} Es existiert auch eine Stern"=Variante dieser Option, |type*=|\meta{Typ}, die sich unterschiedlich verhält, wenn das \package{hyperref}"=Paket\cite{hyperref} geladen ist: Während |type=| einen Hyperlink"=Anker setzt (sofern |hypcap=|\x|true| gesetzt ist), tut dies |type*=| nicht. (Siehe auch \Ref{hyperref}\,) \end{Expert} \begin{Expert} \emph{\DefaultNoteText:} Bitte definieren Sie das interne Makro |\@captype| nicht, wie in manchen Dokumentationen vorgeschlagen wird, selber um, sondern verwenden Sie stattdessen immer |\caption|\-|setup{type=|\x\ldots|}|. \end{Expert} \medskip Eigene Typen können mit |\Declare|\-|Floating|\-|Environment| (angeboten vom \package{newfloat}"=Paket), |\new|\-|float| (angeboten vom \package{float}"=Paket\cite{float}) oder |\Declare|\-|New|\-|Float|\-|Type| (angeboten vom \package{floatrow}"=Paket\cite{floatrow}) definiert werden. \medskip \INFO % \NEWdescription{v3.1} Bitte verwenden Sie die Option |type=| nur \emph{innerhalb} von Boxen oder Umgebungen (wie |\par|\-|box| oder |mini|\-|page|), am besten solcher, wo kein Seitenumbruch innerhalb möglich ist, damit die Abbildung bzw.~Tabelle und die Beschriftung nicht durch einen solchen getrennt werden kann. Weiterhin können einige unschöne Nebeneffekte auftreten, wenn |type=| außerhalb einer Box oder Umgebung verwendet wird; daher wird in solchen Fällen eine Warnung ausgegeben.\footnote{% Sie erhalten diese Warnung nur dann, wenn Sie \eTeX\ verwenden.} % --------------------------------------------------------------------------- % \clearpage \section{Befehle} \subsection{Setzen von Beschriftungen} \label{caption} \label{captionlistentry} \DescribeMacro{\caption} Der Befehl \begin{quote} |\caption|\oarg{Kurzform f"ur das Verzeichnis}\marg{Beschriftung} \end{quote} erzeugt eine Über- bzw.~Unterschrift innerhalb einer gleitenden Umgebung wie |figure| oder |table|. Dies ist an sich nichts neues, hinzugekommen ist allerdings, daß kein Eintrag ins Abbildungs- oder Tabellenverzeichnis vorgenommen wird, wenn eine leere Kurzform angegeben wird, wie etwa hier: \begin{quote} |\caption[]{Dies ist eine Abbildung, die nicht ins|\\ | Abbildungsverzeichnis aufgenommen wird}| \end{quote} \begin{Expert} Beachten Sie, daß die \meta{Beschriftung} ein \emph{wanderndes} Argument ist, solange keine \meta{Kurzform} angegeben ist. Ist hingegen eine \meta{Kurzform} angegeben, ist stattdessen diese wandernd. "`\emph{Wanderndes} Argument"' bedeutet, daß dieses Argument auch in die Datei geschrieben wird, die beim nächsten \LaTeX"=Lauf das Abbildungs- bzw. Tabellenverzeichnis bereitstellt. \emph{Wandernde} Argumente dürfen keine \emph{zerbrechliche} Befehle enthalten, alles muß hier \emph{robust} sein, ansonsten kann das Argument \emph{zerbrechen} und beim nächsten \LaTeX"=Lauf seltsame Fehlermeldungen hervorrufen. Einige \emph{zerbrechliche} Befehle können mit |\protect| vor dem \emph{Zerbrechen} geschützt werden; eigene Definitionen können mit |\Declare|\-|Robust|\-|Command| anstelle von |\new|\-|command| definiert werden, um sie \emph{robust} zu machen. Ein Beispiel: |\caption{${}^{137}_{\phantom{1}55}$Cs}| wird Fehlermeldungen zur Folge haben, da |\phantom| \emph{zerbrechlich} ist. Daher muß in so einem Fall entweder die \meta{Kurzform} bemüht werden (z.B.~|\caption[${}^|\x|{137}_|\x|{55}$|\x|Cs]|\x|{${}^|\x|{137}_|\x|{\phantom{1}55}$|\x|Cs}|) oder aber ein |\protect| ergänzt werden, um |\phantom| vor dem \emph{zerbrechen} zu schützen: |\caption{${}^|\x|{137}_|\x|{|\textcolor{blue}{\cs{protect}}|\phantom{1}55}$|\x|Cs}|. Manchmal ist dies allerdings nicht ausreichend. Der Grund ist darin zu finden, daß der Ein-Zeilen-Test die \meta{Beschriftung} in eine horizontale Box setzt, um die Breite zu bestimmen. Manche Umgebungen mögen dies nicht besonders und quittieren es mit einer Fehlermeldung. Ein Beispiel: |\caption{Ein| |Schema.| |\[V_{C}| |\sim| |\left| |\{| |\begin{array}{cc}| |E_{g}| |&| |\textrm{p-n}| |\\| |e\phi_{B}| |&| |\textrm{M-S}| |\end{array}| |\right.| |\]}|. Der Gebrauch des optionalen Argumentes \meta{Kurzform} mittels |\caption[Ein| |Schema]{|\ldots|}| ist hier nicht ausreichend, es kommt immer noch zu eine Fehlermeldung. (``\texttt{Missing \$ inserted.}'') Hier schafft es daher Abhilfe, den Ein-Zeilen-Test mittels |\caption|\-|setup{single|\-|line|\-|check=|\x|off}| direkt vor dem Betroffenen |\caption| Befehl auszuschalten. Mehr Informationen über \emph{wanderende} Argumente und \emph{zerbrechliche} \& \emph{robuste} Befehle finden sich in der gängigen \LaTeX"=Literatur, aber auch hier: \url{http://mirror.ctan.org/info/lshort/german/} und (in englischer Sprache) hier: \url{http://www-h.eng.cam.ac.uk/help/tpl/textprocessing/teTeX/latex/latex2e-html/fragile.html} \end{Expert} \medskip \pagebreak[3] \DescribeMacro{\caption*} Das \package{longtable}"=Paket definiert zusätzlich zum Befehl |\caption| auch die Stern-Variante |\caption*|, die eine Beschriftung ohne Bezeichner und ohne Eintrag ins Tabellenverzeichnis erzeugt. So erzeugt z.B. der Code \begin{quote} |\begin{longtable}{|\ldots|}|\\ | \caption*{Eine Tabelle}\\|\\ | |\ldots\\ |\end{longtable}| \end{quote} diese Tabelle:\par \DeleteShortVerb{\|} \vskip\intextsep \begin{minipage}{\linewidth} \captionsetup{type=table,position=t} \caption*{Eine Tabelle} \centering \begin{tabular}{r|rr} & x & y \\\hline a & 1 & 2 \\ b & 3 & 4 \\ \end{tabular} \end{minipage} \vskip\intextsep \MakeShortVerb{\|} \Thispackage\ bietet diesen Mechanismus auch für Abbildungs- und Tabellenbeschriftungen in Gleitumgebungen wie z.B. |table| an: \begin{quote} |\begin{table}|\\ | \caption*{Eine Tabelle}|\\ % | \begin{tabular}{|\ldots|}|\\ % | |\ldots\\ % | \end{tabular}|\\ | |\ldots\\ |\end{table}| \end{quote} \pagebreak[3] \DescribeMacro{\captionof} \DescribeMacro{\captionof*} Der Befehl |\caption| funktioniert in der Regel nur innerhalb von gleitenden Umgebungen, manchmal möchte man ihn jedoch auch außerhalb anwenden, etwa um eine Abbildung in eine nicht-gleitende Umgebung wie |mini|\-|page| zu setzen.\par Hierfür stellt \thispackage\ den Befehl \begin{quote} |\captionof|\marg{Umgebungstyp}\oarg{Kurzform}\marg{Langform} \end{quote} zur Verfügung. Die Angabe des Umgebungstypen ist hierbei notwendig, damit der gewünschte Bezeichner (wie z.B. "`Abbildung"' oder "`Tabelle"') gewählt wird und der Eintrag in das richtige Verzeichnis vorgenommen wird. Ein Beispiel: \begin{quote} % |\captionof{figure}{Eine Abbildung}|\\ |\captionof{table}{Eine Tabelle}| \end{quote} führt zu folgendem Ergebnis: \begin{Example} % \begingroup % \captionof{figure}{Eine Abbildung} % \endgroup \captionsetup{position=top} % \begingroup \captionof{table}{Eine Tabelle} % \endgroup \end{Example} Analog zu |\caption*| gibt es auch den Befehl |\captionof*| für Beschriftungen ohne Bezeichner und ohne Verzeichniseintrag. \INFO % \NEWdescription{v3.1} Da |\caption|\-|of| intern die Option |type| verwendet, gelten hier die gleichen Einschränkungen wie für die Option |type|, d.h.~sowohl |\caption|\-|of| als auch |\caption|\-|of*| sollten nur \emph{innerhalb} von Boxen oder Umgebungen verwendet werden. \See{\Ref{types}} \bigskip \pagebreak[3] \DescribeMacro{\captionlistentry}\NEWfeature{v3.1} Unter gewissen Umständen kann es nützlich sein, lediglich einen Eintrag ins Abbildungs- bzw.~Tabellenverzeichnis vorzunehmen. Dies kann mit \begin{quote} |\captionlistentry|\oarg{Umgebungstyp}\marg{Verzeichniseintrag} \end{quote} bewerkstelligt werden. Ein Beispiel: Es ist recht einfach, eine |long|\-|table| anzulegen, die die Beschriftungen \emph{über} dem Tabelleninhalt hat, und wo der Listeneintrag auf die erste Seite der Tabelle verweist: \begin{quote} |\begin{longtable}{|\ldots|}|\\ | \caption{|\ldots|}\\|\\ |\endfirsthead|\\ | \caption[]{|\ldots|}\\|\\ |\endhead|\\ | |\ldots \end{quote} Aber da das \package{longtable}"=Paket keinen |\end|\-|first|\-|foot| Befehl anbietet, kann dies nicht so einfach auf Beschritungen \emph{unter} dem Tabelleninhalt übertragen werden. Stattdessen kann man aber |\caption|\-|list|\-|entry| zum Einsatz bringen: \begin{quote} |\begin{longtable}{|\ldots|}|\\ | \caption[]{|\ldots|}\\|\\ |\endfoot|\\ | \captionlistentry{|\ldots|}|\\ | |\ldots \end{quote} \begin{Annotation*} Ein weiteres Anwendungsbeispiel findet sich in \Ref{examples}. \end{Annotation*} \begin{Expert} Es existiert auch eine Stern"=Variante, |\caption|\-|list|\-|entry*|, die den Umgebungszähler nicht erhöht. (Innerhalb von |long|\-|table| Umgebungen erhöht allerdings |\caption|\-|list|\-|entry| niemals den Tabellenzähler. Siehe auch \Ref{longtable}.) \end{Expert} \begin{Expert} Bitte beachten Sie, daß \meta{Verzeichniseintrag} ein \emph{wanderndes} Argument ist, hier also alles \emph{robust} sein muß. (Siehe auch Erklärung zu |\caption|) \end{Expert} \subsection{Anwenden von Optionen} \label{captionsetup} \DescribeMacro{\captionsetup} Den Befehl |\caption|\-|setup| haben wir ja schon im \Ref{usage} kennengelernt, uns dort allerdings die Bedeutung des optionalen Parameters \meta{Typ} aufgespart. Wir erinnern uns, die Syntax des Befehls lautet \begin{quote} |\captionsetup|\oarg{Typ}\marg{Optionen}\quad. \end{quote} Wird hier ein \meta{Typ} angegeben, so werden die Optionen nicht unmittelbar umgesetzt, sondern werden lediglich vermerkt und kommen erst dann zum Einsatz, wenn eine Über- bzw.\ Unterschrift innerhalb der passenden (gleitenden) Umgebung gesetzt wird. So wirkt sich z.B. die Angabe \begin{quote} |\captionsetup[figure]|\marg{Optionen} \end{quote} lediglich auf die Unterschriften aus, die innerhalb der Umgebung |figure| gesetzt werden. Ein Beispiel: \begin{quote} |\captionsetup{font=small}|\\ |\captionsetup[figure]{labelfont=bf,textfont=it}| \end{quote} liefert Abbildungs- und Tabellenunterschriften der Art: \begin{Example} \captionsetup{font=small} \captionsetup[figure]{labelfont=bf,textfont=it} \begingroup \captionof{figure}{Eine Abbildung} \endgroup \captionsetup{position=top} \begingroup \captionof{table}{Eine Tabelle} \endgroup \end{Example} Wie man sieht, führt das |\caption|\-|setup[figure]{|\ldots|}| dazu, daß lediglich die Abbildungsunterschriften mit fettem Bezeichner und kursivem Text gesetzt werden; alle anderen Unter- bzw.\ Überschriften werden jedoch hiervon nicht beeinflusst. Als Umgebungstypen mit Unter- bzw.\ Überschriften gibt es in der Regel nur zwei: |figure| und |table|. Wie wir jedoch später sehen werden, kommen durch die Verwendung spezieller \LaTeX-Pakete (wie etwa das \package{floatrow}, \package{longtable} oder \package{sidecap}"=Paket) ggf.~weitere Typen hinzu, deren Beschriftungen ebenfalls derart individuell angepasst werden können. \See{\Ref{declare} und \Ref{packages}} \begin{Expert} \NEWfeature{v3.1} Es existiert auch eine Stern"=Variante von |\caption|\-|setup|: \begin{quote} |\captionsetup*|\oarg{Typ}\marg{Optionen} \end{quote} Während die Variante ohne Stern ggf.~zu Warnungen führt -- zum Beispiel wenn die \meta{Optionen} im Verlauf des Dokumentes nicht zum Einsatz kommen (wie z.B. |\caption|\-|setup[table]{font=|\x|sf}| ohne folgende |table|) -- ist dies bei der Stern"=Variante nicht der Fall. \iffalse Dies kann sich z.B. bei der Entwicklung von generischen Designvorlagen als hilfreich erweisen. \fi \end{Expert} \medskip \pagebreak[3] \DescribeMacro{\clearcaptionsetup} Um vermerkte, typbezogene Parameter aus dem Gedächnis von \LaTeX\ zu löschen, gibt es den Befehl \begin{quote} |\clearcaptionsetup|\oarg{Option}\marg{Typ}\quad. \end{quote} |\clearcaptionsetup{figure}| würde z.B. die in dem obrigen Beispiel deklarierte Sonderbehandlung der Abbildungsunterschriften wieder aufheben: \begin{quote} |\captionsetup{font=small}|\\ |\captionsetup[figure]{labelfont=bf,textfont=it}|\\ \ldots\\ | \caption{Eine Abbildung}|\\ \ldots\\ |\clearcaptionsetup{figure}|\\ \ldots\\ | \caption{Eine Abbildung}|\\ \ldots \end{quote} \begin{Example} \captionsetup{font=small} \captionsetup[figure]{labelfont=bf,textfont=it} \begingroup \captionof{figure}{Eine Abbildung} \endgroup \captionsetup{position=top} \clearcaptionsetup{figure} \begingroup \captionof{figure}{Eine Abbildung} \endgroup \end{Example} \pagebreak[3] \NEWfeature{v3.1} Wird das optionale Argument \meta{Option} verwendet, werden nur die Einstellungen entfernt, die diese \meta{Option} betreffen.\footnote{% Es kann hier nur \emph{eine} Option angegeben werden; sollen mehrere Einstellungen entfernt werden, muß hierzu \cs{clear}\-\texttt{caption}\-\texttt{setup} mehrmals angewandt werden.} Während in dem obrigen Beispiel nicht nur die Optionen |labelfont=bf,|\x|textfont=it| für Abbildungen aufgehoben werden (sondern alle Einstellungen, die die Abbildungsbeschriftungen betreffen), würde der folgende Code nur die Einstellung |labelfont=bf| entfernen und alle anderen Einstellungen für Abbildungen intakt lassen: \begin{quote} |\captionsetup{font=small}|\\ |\captionsetup[figure]{labelfont=bf,textfont=it}|\\ \ldots\\ | \caption{Eine Abbildung}|\\ \ldots\\ |\clearcaptionsetup[labelfont]{figure}|\\ \ldots\\ | \caption{Eine Abbildung}|\\ \ldots \end{quote} \begin{Example} \captionsetup{font=small} \captionsetup[figure]{labelfont=bf,textfont=it} \begingroup \captionof{figure}{Eine Abbildung} \endgroup \captionsetup{position=top} \clearcaptionsetup[labelfont]{figure} \begingroup \captionof{figure}{Eine Abbildung} \endgroup \end{Example} \begin{Expert} Analog zu |\caption|\-|setup*| gibt es hier ebenfalls eine Stern"=Variante |\clear|\-|caption|\-|setup*|, die eventuell auftretende Warnungen unterdrückt, etwa wenn die angegebene \meta{Option} gar nicht für den angegebenen \meta{Typ} eingestellt war. \end{Expert} \medskip \pagebreak[3] \DescribeMacro{\showcaptionsetup} Für Debug"=Zwecke wird der Befehl \nopagebreak[3] \begin{quote} |\showcaptionsetup|\marg{Typ} \end{quote} \nopagebreak[3] bereitgestellt. Er erzeugt einen Eintrag in der Log"=Datei und zeigt dort die für den angegebenen \meta{Typ} eingestellten Optionen an. So gibt einem zum Beispiel \begin{quote} |\captionsetup[figure]{labelfont=bf,textfont=it}|\\ |\showcaptionsetup{figure}| \end{quote} die Info: \begin{quote}\small |Caption Info: Option list on `figure'|\\ |Caption Data: {labelfont=bf,textfont=it} on input line 5.| \end{quote} \pagebreak[3] \subsection{Fortlaufende Gleitumgebungen} \label{ContinuedFloat} \DescribeMacro{\ContinuedFloat} Manchmal möchte man Abbildungen oder Tabellen aufteilen, jedoch ohne den einzelnen Teilen eine eigene Abbildungs- oder Tabellennummer zu geben. Hierfür stellt \thispackage\ den Befehl \begin{quote} |\ContinuedFloat| \end{quote} zur Verfügung, der gleich als erstes innerhalb der nächsten (Gleit-)Umgebung(en) angewandt werden sollte. Er verhindert, daß die Zählung fortgeführt wird; eine Abbildung oder Tabelle, die ein |\Continued|\-|Float| enthält, bekommt also die gleiche Nummer wie die vorherige Abbildung oder Tabelle. Ein Beispiel: \begin{quote} |\begin{table}|\\ | \caption{Eine Tabelle}|\\ | |\ldots\\ |\end{table}|\\ \ldots\\ |\begin{table}\ContinuedFloat|\\ | \caption{Eine Tabelle (Fortsetzung)}|\\ | |\ldots\\ |\end{table}| \end{quote} ergibt als Ergebnis: \begin{Example} \captionsetup{type=table,position=b,skip=0pt} \caption{Eine Tabelle} \centerline{\ldots} \end{Example} \begin{Example} \captionsetup{type=table,position=b,skip=0pt} \ContinuedFloat \caption{Eine Tabelle (Fortsetzung)} \centerline{\ldots} \end{Example} \bigskip \NEWfeature{v3.1} Zusätzlich führt der |\Continued|\-|Float| Befehl auch Einstellungen aus, die mit dem Typ "`|Continued|\-|Float|"' verknüpft sind. Dies kann zum Beispiel verwendet werden, um automatisch für fortgesetzte Abbildungen oder Tabellen auf ein anderes Bezeichner- oder Textformat umzuschalten, wie etwa hier: \begin{quote} |\DeclareCaptionLabelFormat{continued}{#1~#2 (Fortsetzung)}|\\ |\captionsetup[ContinuedFloat]{labelformat=continued}|\\ \ldots\\ |\begin{table}\ContinuedFloat|\\ | \caption{Eine Tabelle}|\\ | |\ldots\\ |\end{table}| \end{quote} \begin{Example} \captionsetup{type=table,position=b,skip=0pt} \captionsetup[ContinuedFloat]{labelformat=continued1} \ContinuedFloat \caption{Eine Tabelle}\label{continued1} \centerline{\ldots} \end{Example} \smallskip \See{\Ref{declare} für die Erläuterung des Befehls \cs{Declare}\-\texttt{Caption}\-\texttt{Label}\-\texttt{Format}.} \medskip Weiterhin existiert auch ein \LaTeX"=Zähler namens |Continued|\-|Float|, der auch für eigene Zwecke eingesetzt werden kann. Für gewöhnliche (gleitende) Umgebungen ist er auf Null gesetzt, auf Eins in der ersten fortgeführten Umgebung, Zwei in der nächsten und so weiter. Jedes |\Continued|\-|Float| erhöht also diesen Zähler um Eins, während eine Gleitumgebung ohne |\Continued|\-|Float| den Zähler auf Null zurücksetzt. Ein Beispiel: \begin{quote} |\DeclareCaptionLabelFormat{cont}{#1~#2\alph{ContinuedFloat}}|\\ |\captionsetup[ContinuedFloat]{labelformat=cont}|\\ \ldots\\ |\begin{table}\ContinuedFloat|\\ | \caption{Eine Tabelle}|\\ | |\ldots\\ |\end{table}| \end{quote} \begin{Example} \captionsetup{type=table,position=b,skip=0pt} \captionsetup[ContinuedFloat]{labelformat=continued2} \ContinuedFloat \caption{Eine Tabelle}\label{continued2} \centerline{\ldots} \end{Example} \medskip Eine Referenz auf diese Tabelle würde "`\autoref{continued2}"' ergeben, da lediglich das Format der Tabellenbeschriftung geändert wurde. Sollen Referenzen ebenfalls diesen Zähler enthalten, so kann stattdessen der Befehl |\the|\-|Continued|\-|Float| passend umdefiniert werden. Dieser Befehl wird automatisch bei der Anwendung von |\Continued|\-|Float| dem Abbildungs- bzw.~Tabellenzähler angehängt und hat normalerweise einen leeren Inhalt. \begin{quote} |\renewcommand\theContinuedFloat{\alph{ContinuedFloat}}|\\ \ldots\\ |\begin{table}\ContinuedFloat|\\ | \caption{Eine Tabelle}|\\ | |\ldots\\ |\end{table}| \end{quote} \begin{Example} \captionsetup{type=table,position=b,skip=0pt} \renewcommand\theContinuedFloat{\alph{ContinuedFloat}} \ContinuedFloat \caption{Eine Tabelle}\label{continued3} \centerline{\ldots} \end{Example} \medskip Eine Referenz auf diese Tabelle würde nun "`\autoref{continued3}"' ergeben. \pagebreak[3] \DescribeMacro{\ContinuedFloat*} Angenommen man möchte gerne die erste Abbildung oder Tabelle einer fortlaufenden Serie mit einer Beschriftung der Art "`Abbildung 7a"' und nicht mit "`Abbildung 7"' beschriften. (Und die zweite entsprechend mit "`Abbildung 7b"' statt "`Abbildung 7a"'.) Dies ist auch möglich, indem man die Stern"=Variante |\Continued|\-|Float*| anwendet. Diese führt genau wie |\ContinuedFloat| auch die mit "`|Continued|\-|Float|"' verknüpften Optionen aus und erhöht den \LaTeX"=Zähler |Continued|\-|Float|, markiert aber die erste Abbildung bzw.~Tabelle einer fortlaufenden Serie: \begin{quote} |\renewcommand\theContinuedFloat{\alph{ContinuedFloat}}|\\ \ldots\\ |\begin{figure}\ContinuedFloat*|\\ | |\ldots\\ | \caption{Erste Abbildung einer Serie}|\\ |\end{figure}|\\ \ldots\\ |\begin{figure}\ContinuedFloat|\\ | |\ldots\\ | \caption{Zweite Abbildung einer Serie}|\\ |\end{figure}|\\ \ldots\\ |\begin{figure}\ContinuedFloat|\\ | |\ldots\\ | \caption{Dritte Abbildung einer Serie}|\\ |\end{figure}| \end{quote} \begin{Example} \captionsetup{type=figure,position=b,skip=0pt} \renewcommand\theContinuedFloat{\alph{ContinuedFloat}} \begingroup \ContinuedFloat* \centerline{\ldots} \caption{Erste Abbildung einer Serie} \endgroup \begingroup \ContinuedFloat \centerline{\ldots} \caption{Zweite Abbildung einer Serie} \endgroup \begingroup \ContinuedFloat \centerline{\ldots} \caption{Dritte Abbildung einer Serie} \endgroup \end{Example} \smallskip \Note{Leider ist \cs{ContinuedFloat*} nicht verfügbar, wenn das \package{subfig}"=Paket\cite{subfig} geladen ist.} \pagebreak[3] \subsubsection*{Eine Anmerkung zur longtable-Umgebung} Möchten Sie hingegen bei fortgeführten |long|\-|table|"=Umgebungen einen anderen Bezeichner (nach einem Seitenumbruch), so kann dies \emph{nicht} mit |\Continued|\-|Float| bewerkstelligt werden, aber mit Hilfe der vom \package{longtable}"=Paket\cite{longtable} bereitgestellten Befehle |\end|\-|first|\-|head| und |\end|\-|head|; in etwa so: \begin{quote} |\DeclareCaptionLabelFormat{continued}{#1~#2 (Fortsetzung)}|\\ \ldots\\ |\begin{longtable}{|\ldots|}|\\ | \caption{Eine mehrseitige Tabelle}\\|\\ |\endfirsthead|\\ | \captionsetup{labelformat=continued}|\\ | \caption[]{Eine mehrseitige Tabelle}\\|\\ |\endhead|\\ | |\ldots\\ |\end{longtable}| \end{quote} % --------------------------------------------------------------------------- % \clearpage \section{Eigene Erweiterungen} \label{declare} Wem die vorhandenen Formate, Trenner, Textausrichtungen, Zeichensätze und Stile nicht ausreichen, der hat die Möglichkeit, sich eigene zu definieren. Hierzu gibt es eine Reihe von Befehlen, die in der Prämbel des Dokumentes (das ist der Teil zwischen |\document|\-|class| und |\begin{document}|) zum Einsatz kommen. \pagebreak[3] \DescribeMacro{\DeclareCaption-\\Format} Eigene Formate können mit dem Befehl \begin{quote} |\DeclareCaptionFormat|\marg{Name}\marg{Code mit \#1, \#2 und \#3} \end{quote} definiert werden. Für \#1 wird später der Bezeichner, für \#2 der Trenner und für \#3 der Text eingesetzt. So ist z.B. das Standardformat |plain|, welches die Beschriftung als gewöhnlichen Absatz formatiert, in diesem Paket so vordefiniert: \begin{quote} |\DeclareCaptionFormat{plain}{#1#2#3\par}| \end{quote} \begin{Expert} Es gibt auch eine Stern"=Variante, |\Declare|\-|Caption|\-|Format*|, die den Code nicht in \TeX s horizontalem Modus, sondern im vertikalen Modus setzt, aber die |indention=| Option nicht unterstützt. \end{Expert} \pagebreak[3] \DescribeMacro{\DeclareCaption-\\LabelFormat} Ähnlich können auch eigene Bezeichnerformate definiert werden: \begin{quote} |\DeclareCaptionLabelFormat|\marg{Name}\marg{Code mit \#1 und \#2} \end{quote} Bei den Bezeichnerformaten wird hierbei für \#1 der Name (also z.B. "`Abbildung"'), für \#2 die Nummer (also z.B. "`12"') eingesetzt. Ein Beispiel: \begin{quote} |\DeclareCaptionLabelFormat{bf-parens}{(\textbf{#2})}|\\ |\captionsetup{labelformat=bf-parens,labelsep=quad}| \end{quote} \example*{labelformat=bf-parens,labelsep=quad}{\exampletext} \pagebreak[3] \DescribeMacro{\bothIfFirst} \DescribeMacro{\bothIfSecond} Bei der Definition von eigenen Bezeichnerformaten gibt es eine Besonderheit zu beachten: Wird das Bezeichnerformat auch in Verbindung mit dem \package{subcaption} oder \package{subfig}"=Paket\cite{subfig} verwendet, so kann der Bezeichnername (also \#1) auch leer sein. Um dies flexibel handhaben zu können, stellt \thispackage\ die Befehle \begin{quote} |\bothIfFirst|\marg{Erstes Argument}\marg{Zweites Argument}\quad und\\ |\bothIfSecond|\marg{Erstes Argument}\marg{Zweites Argument} \end{quote} zur Verfügung. |\bothIfFirst| testet, ob das erste Argument nicht leer ist, |\bothIfSecond|, ob das zweite Argument nicht leer ist. Nur wenn dies der Fall ist, werden beide Argumente ausgegeben, ansonsten werden beide unterdrückt. \smallskip \pagebreak[3] So ist z.B. das Standard"=Bezeichnerformat |simple| nicht, wie man naiverweise annehmen könnte, als \begin{quote} |\DeclareCaptionLabelFormat{simple}{#1~#2}| \end{quote} definiert, weil dies zu einem störendem führenden Leerzeichen führen würde, sollte \#1 leer sein. Stattdessen kommt folgende Definition zum Einsatz, die sowohl mit |\caption| als auch mit |\sub|\-|caption| bzw.~|\sub|\-|float| harmoniert: \begin{quote} |\DeclareCaptionLabelFormat{simple}%|\\ | {\bothIfFirst{#1}{~}#2}|\mbox{\quad,} \end{quote} d.h.~das Leerzeichen kommt nur dann zum Einsatz, wenn \#1 nicht leer ist. \smallskip \pagebreak[3] \DescribeMacro{\DeclareCaption-\\TextFormat}\NEWfeature{v3.0l} Ebenso können eigene Textformate definitiert werden: \begin{quote} |\DeclareCaptionTextFormat|\marg{Name}\marg{Code mit \#1} \end{quote} An die Stelle von \#1 wird später der Beschriftungstext eingesetzt. \bigskip \pagebreak[3] \DescribeMacro{\DeclareCaption-\\LabelSeparator} Eigene Trenner werden mit \begin{quote} |\DeclareCaptionLabelSeparator|\marg{Name}\marg{Code} \end{quote} definiert. Auch hier wieder als einfaches Beispiel eine Definition innerhalb des \package{caption}"=Paketes selber: \begin{quote} |\DeclareCaptionLabelSeparator{colon}{: }| \end{quote} \begin{Expert} Es gibt auch eine Stern"=Variante, |\Declare|\-|Caption|\-|Label|\-|Separator*|, die den Code ohne den mit |label|\-|font=| eingestellten Zeichensatz setzt. Auf diese Art sind z.B. die Trenner |quad|, |new|\-|line| und |en|\-|dash| vordefiniert. \end{Expert} \bigskip \pagebreak[3] \DescribeMacro{\DeclareCaption-\\Justification} Eigene Textausrichtungen können mit \begin{quote} |\DeclareCaptionJustification|\marg{Name}\marg{Code} \end{quote} definiert werden. Der \meta{Code} wird dann der Beschriftung vorangestellt, so führt z.B. die Verwendung der bereits vordefinierten Ausrichtung \begin{quote} |\DeclareCaptionJustification{raggedright}{\raggedright}| \end{quote} dazu, daß alle Zeilen der Beschriftung linksbündig ausgegeben werden. \bigskip \pagebreak[3] \DescribeMacro{\DeclareCaption-\\Font} Eigene Zeichensatzoptionen können mit \begin{quote} |\DeclareCaptionFont|\marg{Name}\marg{Code} \end{quote} definiert werden. So sind z.B. die Optionen |small| und |bf| folgendermaßen vordefiniert: \begin{quote} |\DeclareCaptionFont{small}{\small}|\quad und\\ |\DeclareCaptionFont{bf}{\bfseries}|\quad. \end{quote} \iffalse Die Zeilenabstände ließen sich z.B.~über das \package{setspace}"=Paket regeln:%\NEWdescription{v3.0h} \begin{quote} |\usepackage{setspace}|\\ |\DeclareCaptionFont{singlespacing}{\setstretch{1}}|~\footnote{% \emph{\DefaultNoteText:} \cs{singlespacing} kann hier nicht benutzt werden, da es ein \cs{vskip} Kommando enthält.}\\ |\DeclareCaptionFont{onehalfspacing}{\onehalfspacing}|\\ |\DeclareCaptionFont{doublespacing}{\doublespacing}|\\ |\captionsetup{font={onehalfspacing,small},labelfont=bf}| \end{quote} \example{font={onehalfspacing,small},labelfont=bf,singlelinecheck=off}{\exampletext} \fi Ein Beispiel, welches Farbe ins Spiel bringt: \begin{quote} |\usepackage{color}|\\ |\DeclareCaptionFont{red}{\color{red}}|\\ |\DeclareCaptionFont{green}{\color{green}}|\\ |\DeclareCaptionFont{blue}{\color{blue}}|\\ |\captionsetup{labelfont={blue,bf},textfont=green}| \end{quote} \example*{labelfont={color=blue,bf},textfont={color=green},singlelinecheck=off}{\exampletext} Aber da \thispackage\ schon die pfiffige Definition \begin{quote} |\DeclareCaptionFont{color}{\color{#1}}| \end{quote} beinhaltet, kann man das selbe Resultat auch einfach mit \begin{quote} |\usepackage{color}|\\ |\captionsetup{labelfont={color=blue,bf},|\\ | textfont={color=green}}| \end{quote} erreichen. \medskip \pagebreak[3] \DescribeMacro{\DeclareCaption-\\Style} Eigene Stile werden folgendermaßen definiert: \begin{quote} |\DeclareCaptionStyle|\marg{Name}\oarg{zusätzliche Optionen}\marg{Optionen} \end{quote} Stile sind einfach eine Ansammlung von geeigneten Einstellungen, die unter einem eigenen Namen zusammengefasst werden und mit der Paketoption |style=|\meta{Name} zum Leben erweckt werden können. Hierbei ist zu beachten, daß die so definierten Stile immer auf dem Stil |base| basieren (siehe auch \Ref{style}), es brauchen also nur davon abweichende Optionen angegeben werden. Sind \meta{zusätzliche Optionen} angegeben, so kommen diese automatisch zusätzlich zum Einsatz, sofern die Beschreibung in eine einzelne Zeile passt und diese Abfrage nicht mit |single|\-|line|\-|check=off| ausgeschaltet wurde. Als Beispiel muß mal wieder eine einfache Definition innerhalb dieses Paketes herhalten: Der Stil |base| ist vordefiniert als \begin{quote} |\DeclareCaptionStyle{base}%|\\ | [justification=centering,indention=0pt]{}|\quad. \end{quote} Etwas spannenderes: \begin{quote} |\DeclareCaptionStyle{mystyle}%|\\ | [margin=5mm,justification=centering]%|\\ | {font=footnotesize,labelfont=sc,margin={10mm,0mm}}|\\ |\captionsetup{style=mystyle}| \end{quote} liefert einem Beschriftungen wie diese hier: \begin{Example} \captionsetup{type=figure,style=mystyle,position=b} \caption{Eine kurze Beschriftung.} \caption{Eine sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr sehr lange Beschriftung.} \end{Example} \bigskip \pagebreak[3] \DescribeMacro{\DeclareCaption-\\ListFormat}\NEWfeature{v3.1} Eigene Listenformate können mit \begin{quote} |\DeclareCaptionListFormat|\marg{Name}\marg{Code mit \#1 und \#2} \end{quote} definiert werden. Im Laufe des Dokumentes wird \#1 dann mit dem Bezeichner"=Präfix (z.B.~|\p@figure|), und \#2 mit der Referenznummer (z.B.~|\the|\-|figure|) ersetzt. % --------------------------------------------------------------------------- % \pagebreak[3] \subsection{Weiterführende Beispiele} \label{examples} \subsubsection*{Beispiel 1} %\NEWdescription{v3.1} Möchte man die Bezeichnung (inkl. Trenner wie Doppelpunkt) vom Text mit einem Zeilenumbruch getrennt haben, so ließe sich das (auch) so bewerkstelligen: \begin{quote} |\DeclareCaptionFormat{myformat}{#1#2\\#3}| \end{quote} Wählt man anschließend dieses Format mit |\caption|\-|setup{format=|\x|myformat}| aus, so erhält man Beschriftungen der Art: %\begin{Example} % \captionsetup{skip=0pt} \example{format=myformat1,labelfont=bf}{\exampletext} %\end{Example} Auch einen Einzug könnte man diesem Format mit auf den Weg geben: \begin{quote} |\captionsetup{format=myformat,indention=1cm}| \end{quote} führt zu Beschriftungen wie: %\begin{Example} % \captionsetup{skip=0pt} \example{format=myformat1,indention=1cm,labelfont=bf}{\exampletext} %\end{Example} Aber Sie möchten den Einzug nur auf die erste Zeile des Texts anwenden? Kein Problem, so würde z.B.~die Definition \begin{quote} |\newlength\myindention|\\ |\DeclareCaptionFormat{myformat}%|\\ | {#1#2\\\hspace*{\myindention}#3}|\\ \ldots\\ |\setlength\myindention{1cm}|\\ |\captionsetup{format=myformat}| \end{quote} zu Beschriftungen dieser Art führen: %\begin{Example} % \captionsetup{skip=0pt} \example{format=myformat2,myindention=1cm,labelfont=bf}{\exampletext} %\end{Example} Zu der Länge |\myindention| hätten Sie gerne eine Option, so daß man diesen Einzug auch z.B.~mit |\caption|\-|setup|\x|[figure]|\x|{myindention=|\ldots|}| setzen kann? Auch dies läßt sich bewerkstelligen, z.B.~folgendermaßen: \begin{quote} |\newlength\myindention|\\ |\DeclareCaptionOption{myindention}%|\\ | {\setlength\myindention{#1}}|\\ |\DeclareCaptionFormat{myformat}%|\\ | {#1#2\\\hspace*{\myindention} #3}|\\ \ldots\\ |\captionsetup{format=myformat,myindention=1cm}| \end{quote} \subsubsection*{Beispiel 2} Die Beschriftungen sollen wie folgt aussehen: %\begin{Example} % \captionsetup{skip=0pt} \example{format=reverse,labelformat=fullparens,labelsep=fill,labelfont=it}{\exampletext} %\end{Example} \pagebreak[2] Dies ließe sich beispielsweise wie folgt realisieren: \nopagebreak[3] \begin{quote} |\DeclareCaptionFormat{reverse}{#3#2#1}|\\ |\DeclareCaptionLabelFormat{fullparens}%|\\ | {(\bothIfFirst{#1}{~}#2)}|\\ |\DeclareCaptionLabelSeparator{fill}{\hfill}|\\ |\captionsetup{format=reverse,labelformat=fullparens,|\\ | labelsep=fill,font=small,labelfont=it}| \end{quote} \subsubsection*{Beispiel 3} Der Bezeichner soll in den linken Rand verlagert werden, so daß die komplette Absatzbreite der Beschriftung selber zugute kommt: \begin{quote} |\DeclareCaptionFormat{llap}{\llap{#1#2}#3\par}|\\ |\captionsetup{format=llap,labelsep=quad,singlelinecheck=no}| \end{quote} Das Ergebnis wären Beschriftungen wie diese: \example{format=llap,labelsep=quad,singlelinecheck=no,margin=0pt}{\exampletext} \medskip Soll der Einzug in den Rand eine feste Größe sein (z.B.~$2.5$\,cm), so könnte hierfür eine Kombination aus |\llap| und |\makebox| angewandt werden, zum Beispiel: \begin{quote} |\DeclareCaptionFormat{llapx}%|\\ | {\llap{\makebox[2.5cm][l]{#1}}#3\par}|\\ |\captionsetup{format=llapx,singlelinecheck=off}| \end{quote} \example{format=llapx,singlelinecheck=off,skip=0pt,margin=0pt}{\exampletext} \subsubsection*{Beispiel 4} Dieses Beispiel setzt eine Abbildung neben eine Tabelle, aber verwendet eine einzige, kombinierte Beschriftung für beide. Dies wird durch eine Kombination aus |\Declare|\-|Caption|\-|Label|\-|Format| und |\caption|\-|list|\-|entry| realisiert: \begin{quote} |\DeclareCaptionLabelFormat{andtable}%|\\ | {#1~#2 \& \tablename~\thetable}|\\ \ldots\\ |\begin{figure}|\\ | \centering|\\ | \includegraphics{|\ldots|}%|\\ | \qquad|\\ | \begin{tabular}[b]{\ldots}|\\ | |\ldots\\ | \end{tabular}|\\ | \captionlistentry[table]{|\ldots|}|\\ | \captionsetup{labelformat=andtable}|\\ | \caption{|\ldots|}|\\ |\end{figure}| \end{quote} \DeleteShortVerb{\|}% \noindent\begin{minipage}{\linewidth} \captionsetup{type=figure} \centering \includegraphics[width=30pt]{cat}% \qquad \begin{tabular}[b]{r|rr} & x & y \\\hline a & 1 & 2 \\ b & 3 & 4 \\ \end{tabular} \captionlistentry[table]{Eine Abbildung und Tabelle mit gemeinsamer Beschriftung} \captionsetup{labelformat=andtable} \caption{Eine Abbildung und Tabelle mit gemeinsamer Beschriftung~\footnotemark} \end{minipage} \footnotetext{Das Katzenbild wurde den Beispielen zum \LaTeX"=Begleiter\cite{TLC2} entnommen, die Erlaubnis hierzu wurde eingeholt.} \MakeShortVerb{\|} (Beachten Sie, daß |\caption|\-|list|\-|entry| den Abbildungs- bzw.~Tabellenzähler erhöht.) % --------------------------------------------------------------------------- % \clearpage \section{Dokumentenklassen \& Babel-Unterstützung} \label{classes} %\NEWdescription{v3.1} Dieser Teil der Dokumentation wird Ihnen einen Überblick über diejenigen Dokumentenklassen geben, an welche \thispackage\ angepasst ist: Welche Möglichkeiten zur Beschriftungsgestaltung sie bereits verfügen, mit welchen Seiteneffekten Sie rechnen müssen, wenn Sie dieses Paket verwenden, und mit welchen Standardwerten die Optionen belegt werden. \NEWfeature{v3.1} Die Standardwerte namens "`default"' hängen von der verwendeten Dokumentenklasse ab; sie repräsentieren quasi das Aussehen, wie es vom Autor der Klasse vorgesehen war. So kann z.B.~die Einstellung |format=|\x|default| je nach verwendeter Klasse unterschiedliche Aussehen der Beschriftungen hervorbringen. \begingroup\setlength\leftmargini{0.3em}% default = 2.5em \INFO Sollten Sie Ihre Dokumentenklasse nicht in diesem Abschnitt finden, so haben Sie trotzdem oftmals keinen Grund zur Sorge: Viele Dokumentenklassen (wie z.B.~die \class{octavo} Klasse) sind von einer der Standardklassen \class{article}, \class{report} oder \class{book} abgeleitet und verhalten sich bezüglich der Abbildungs- und Tabellenbeschriftungen gleich. \Thispackage\ überprüft automatisch die Kompatibilität zur Dokumentenklasse und gibt Ihnen die Warnung \begin{quote}\footnotesize |Package caption Warning: Unsupported document class (or package) detected,|\\ |(caption) usage of the caption package is not recommended.|\\ |See the caption package documentation for explanation.| \end{quote} aus, wenn es eine Unverträglichkeit entdeckt. Wenn Sie keine solche Warnung erhalten, ist alles bestens, falls aber doch, wird der Einsatz des \package{caption}"=Paketes nicht empfohlen und insbesondere nicht unterstützt. \endgroup \begin{Expert} Sollten Sie trotz der angemahnten Inkompatibilität \thispackage{} nutzen wollen, sollten Sie gründlich auf Seiteneffekte achten; gewöhnlich ändert sich alleine durch das Einbinden des \package{caption}"=Paketes ohne Optionen bereits das von der Dokumentenklasse vorgegebene Aussehen der Beschriftungen. Wenn dies für Sie in Ordnung ist, sollten Sie als erstes die Option |style=|\x|base| mittels |\use|\-|package[style=|\x|base]{caption}| oder |\caption|\-|setup{style=|\x|base}| angeben, um \thispackage\ in einen wohldefinierten Grundstatus zu versetzen. Anschließend können Sie anfangen, mit zusätzlichen Optionen erste Anpassungen vorzunehmen und dabei die Daumen gedrückt zu halten. \end{Expert} \newcommand*\Option{Option} \newcommand*\defaultvalue{Standard-Belegung (\texttt{default})} \newcommand*\uses{\textit{verwendet}} \newcommand*\settings{\textit{Einstellungen}} \newcommand*\nofont{\textit{keiner}} \subsection{Standard \LaTeX: article, report und book} \begin{tabular}{ll} \Option & \defaultvalue \\\hline |format=| & |plain| \\ |labelformat=| & |simple| \\ |labelsep=| & |colon| \\ |justification=| & |justified| \\ |font=| & \nofont \\ |labelfont=| & \nofont \\ |textfont=| & \nofont \\ \end{tabular} \begin{Annotation} Dies gilt auch für von \class{article}, \class{report} und \class{book} abgeleitete Dokumentenklassen. \end{Annotation} \subsection{\AmS: amsart, amsproc und amsbook} \label{AMS} \begin{tabular}{ll} \Option & \defaultvalue \\\hline |format=| & |plain| \\ |labelformat=| & |simple| \\ |labelsep=| & |.\enspace| \\ |justification=| & |justified| \\ |font=| & |\@captionfont| \\ |labelfont=| & |\@captionheadfont| \\ |textfont=| & |\@captionfont\upshape| \\ \end{tabular} \begin{Annotation*} |\@caption|\-|font| wird von den \AmS\ Dokumentenklassen auf |\normal|\-|font| vorbelegt, und |\@caption|\-|head|\-|font| auf |\sc|\-|shape|. \end{Annotation*} Weiterhin wird der Rand für mehrzeilige Abbildungs- bzw.~Tabellenbeschriftungen auf |\caption|\-|indent| gesetzt, bei einzeiligen Beschriftungen wird lediglich die Hälfte davon verwendet. (|\caption|\-|indent| wird von den \AmS\ Klassen auf |3pc| vorbelegt.) Möchten Sie einen einheitlichen Rand, so fügen Sie bitte |\clear|\-|caption|\-|setup[margin*]{single|\-|line}| in Ihren Dokumentenvorspann ein, nachdem Sie \thispackage\ geladen haben. Zusätzlich werden automatisch die Optionen |figure|\-|position=b,|\x|table|\-|position=t| gesetzt. Dies können Sie überschreiben, indem Sie beim Laden des \package{caption}"=Paketes einfach andere Werte für |figure|\-|position=| und |table|\-|position=| angeben. \subsection{beamer} \label{beamer} \begin{tabular}{ll} \Option & \defaultvalue \\\hline |format=| & |plain| \\ |labelformat=| & \textit{nicht nummeriert} \\ |labelsep=| & |colon| \\ |justification=| & |raggedright| \\ |font=| & \class{beamer} "`|caption|"' \settings \\ |labelfont=| & \class{beamer} "`|caption name|"' \settings \\ |textfont=| & \nofont \\ \end{tabular} \subsubsection*{Von der Klasse angebotene Befehle und deren Seiteneffekte} Die Zeichensatz- und Farbeinstellungen können mit |\set|\-|beamer|\-|font{caption}|\marg{Optionen} und |\set|\-|beamer|\-|font{caption name}|\marg{Optionen} vorgenommen werden. Dies wird auch mit dem \package{caption}"=Paket noch funktionieren, zumindest solange Sie keinen anderen Zeichensatz mit |\caption|\-|setup{font=|\x\meta{Optionen}|}| oder |\caption|\-|setup{label|\-|font=|\x\meta{Optionen}|}| einstellen.\par Weiterhin bietet die \package{beamer}"=Klasse verschiedene "`Templates"' für die Beschriftungen an, diese können mit |\set|\-|beamer|\-|template|\x|{caption}|\x|[|\meta{Template}|]| ausgewählt werden. Da \thispackage\ diesen Mechanismus ersetzt, haben |\def|\-|beamer|\-|template*|\x|{caption}|\x\marg{Template Code} und |\set|\-|beamer|\-|template|\x|{caption}|\x|[|\meta{Template}|]| keine Funktion mehr, wenn \thispackage\ verwendet wird. (Au"snahme: Die Auswahl des Templates |default|, |num|\-|bered| oder |caption| |name| |own| |line| wird automatisch erkannt und auf dem \package{caption}"=Paket entsprechende Optionen umgesetzt, sofern diese nicht explizit durch den Anwender mit anderen Einstellungen "uberschrieben worden sind.) \subsection{\KOMAScript: scrartcl, scrreprt und scrbook} \label{KOMA} \begin{tabular}{ll} \Option & \defaultvalue \\\hline |format=| & \uses\ |\setcapindent| \textit{\&} |\setcaphanging| \settings \\ |labelformat=| & \textit{wie \purett{simple}, aber mit ``autodot'' Feature}\\ |labelsep=| & |\captionformat| \\ |justification=| & |justified| \\ |font=| & |\setkomafont{caption}| \settings \\ |labelfont=| & |\setkomafont{captionlabel}| \settings \\ |textfont=| & \nofont \\ \end{tabular} \subsubsection*{Von der Klasse angebotene Befehle} Die \KOMAScript"=Dokumentenklassen bietet sehr viele Möglichkeiten, das Design der Abbildungs- und Tabellenbeschriftungen anzupassen. Für eine Übersicht schauen Sie bitte in die sehr gute \KOMAScript"=Dokumentation, Abschnitt "`Tabellen und Abbildungen"'. \subsubsection*{Seiteneffekte} Das optionale Argument von |\set|\-|cap|\-|width| wird nicht vom \package{caption}"=Paket unterstützt und daher ignoriert. Weiterhin überschreiben die \KOMAScript"=Optionen |table|\-|caption|\-|above| \& |table|\-|caption|\-|below| sowie die dazugehörigen Befehle |\caption|\-|above| \& |\caption|\-|below| die mit |position=| getätigten Einstellungen. \subsection{\NTG: artikel, rapport und boek} \label{NTG} \begin{tabular}{ll} \Option & \defaultvalue \\\hline |format=| & |plain| \\ |labelformat=| & |simple| \\ |labelsep=| & |colon| \\ |justification=| & |justified| \\ |font=| & \nofont \\ |labelfont=| & |\CaptionLabelFont| \\ |textfont=| & |\CaptionTextFont| \\ \end{tabular} \subsubsection*{Von der Klasse angebotene Befehle und deren Seiteneffekte} |\Caption|\-|Label|\-|Font| und |\Caption|\-|Text|\-|Font| können entweder direkt oder indirekt über |\Caption|\-|Fonts| definiert werden. Beides funktioniert auch weiterhin, zumindest solange kein anderer Zeichensatz mit den \package{caption}"=Paketoptionen |label|\-|font=| und |text|\-|font=| festgelegt wird. \subsection{\SmF: smfart und smfbook} \label{SMF} Da die \SmF\ Dokumentenklassen von den \AmS\ Klassen abgeleitet wurden, gelten hier dieselben Standardbelegungen wie dort. Zusätzlich ist der Rand auf den zehnten Teil von |\line|\-|width| limiert. Mögen Sie diese Limitierung nicht, kann sie mit der Option |max|\-|margin=|\x|off| oder |max|\-|margin=|\x|false| ausgeschaltet werden. \subsection{thesis} \label{thesis} \begin{tabular}{ll} \Option & \defaultvalue \\\hline |format=| & |hang| \\ |labelformat=| & \textit{wie \purett{simple}, aber mit kurzem Namen}\\ |labelsep=| & |colon| \\ |justification=| & |justified| \\ |font=| & \nofont \\ |labelfont=| & |\captionheaderfont| \\ |textfont=| & |\captionbodyfont| \\ \end{tabular} \subsubsection*{Von der Klasse angebotene Befehle und deren Seiteneffekte} Der Zeichensatz des Bezeichners kann hier mit |\caption|\-|header|\-|font|, derjenige des Textes mit |\caption|\-|body|\-|font| gesetzt werden. Beides funktioniert auch weiterhin, zumindest solange kein anderer Zeichensatz mit den \package{caption}"=Paketoptionen |label|\-|font=| und |text|\-|font=| gesetzt wird. \subsection{Babel-Option frenchb} \label{frenchb} Wird die Option \package{frenchb} des \package{babel}"=Paketes mit einer der drei Standardklassen (oder einer davon abgeleiteten) verwendet, dann wird |label|\-|sep=| auf |\Caption|\-|Sep|\-|a|\-|ra|\-|tor| vorbelegt und damit die Vorbelegung der Dokumentenklasse überschrieben. In diesem Falle wird eine Umdefinition von |\Caption|\-|Sep|\-|a|\-|ra|\-|tor| auch weiterhin funktionieren, zumindest solange kein anderer Trenner mit der Option |label|\-|sep=| gesetzt wird. \INFO* Bitte laden Sie \thispackage\ \emph{nach} dem \package{babel}"=Paket. \subsection{Pakete frenchle und frenchpro} \label{frenchpro} Wird das \package{frenchle}- oder \package{frenchpro}"=Paket verwendet, dann wird |label|\-|sep=| auf |\caption|\-|sep|\-|a|\-|ra|\-|tor| plus \cs{space} vorbelegt und damit die Vorbelegung der Dokumentenklasse überschrieben. Eine Umdefinition von |\caption|\-|sep|\-|a|\-|ra|\-|tor| wird auch weiterhin funktionieren, zumindest solange kein anderer Trenner mit der Option |label|\-|sep=| gesetzt wird. Weiterhin wird |text|\-|font=| auf |text|\-|font=|\x|it| vorbelegt, um das Standardverhalten des \package{frenchle}- bzw.~\package{frenchpro}"=Paketes bzgl.~des Beschriftungstext"=Zeichensatzes zu emulieren. Bitte beachten Sie, daß der Befehl |\caption|\-|font| auch intern vom \package{caption}"=Paket verwendet wird, und zwar auf eine andere Art und Weise als das \package{frenchle}- bzw.~\package{frenchpro}"=Paket ihn verwendet; daher sollten Sie ihn nicht (mehr) verwenden. Der Befehl |\un|\-|numbered|\-|captions|\marg{figure \emph{oder} table} wird weiterhin seinen Dienst tun, aber nur solange Sie kein anderes Bezeichnerformat mit |label|\-|format=| auswählen. \INFO* Bitte laden Sie \thispackage\ \emph{nach} dem \package{frenchle} oder \package{frenchpro}"=Paket. % --------------------------------------------------------------------------- % \clearpage \section{Unterstützung anderer Pakete} \label{packages} \label{compatibility} %\NEWdescription{v3.1} \Thispackage\ ist an folgende Pakete, die ebenfalls Abbildungs- oder Tabellenbeschriftungen anbieten, angepasst: \begin{quote} \package{float}, \package{floatflt}, \package{fltpage}, \package{hyperref}, \package{hypcap}, \package{listings}, \package{longtable}, \package{picinpar}, \package{picins}, \package{rotating}, \package{setspace}, \package{sidecap}, \package{subfigure}, \package{supertabular}, \package{threeparttable}, \package{wrapfig} und \package{xtab} \end{quote} Weiterhin arbeitet das \package{floatrow}"=Paket\cite{floatrow}, das \package{subcaption}"=Paket (welches Bestandteil der \package{caption}"=Paketfamilie ist), sowie das \package{subfig}"=Paket\cite{subfig} aktiv mit diesem Paket zusammen und verwenden dessen |\caption|\-|setup|"=Schnittstelle. \bigskip \begingroup\setlength\leftmargini{0.3em}% default = 2.5em \INFO Definiert ein anderes Paket (oder eine Dokumentenklasse), welches \thispackage{} nicht kennt, ebenfalls den Befehl |\caption| um, so wird diese Umdefinition bevorzugt, um maximale Kompatibilität zu gewährleisten und Konflikte zu vermeiden. Wird solch eine potentielle Inkompatiblität erkannt, wird diese Warnung ausgegeben:~\footnote{% Diese Warnung kann durch Angabe der Option \texttt{compatibility=true} beim Laden des \package{caption}"=Paketes abgeschaltet werden.} \begin{quote}\footnotesize |Package caption Warning: \caption will not be redefined since it's already|\\ |(caption) redefined by a document class or package which is|\\ |(caption) unknown to the caption package.|\\ |See the caption package documentation for explanation.| \end{quote} \endgroup Als Folge stehen diese Ausstattungsmerkmale des \package{caption}"=Paketes nicht zur Verfügung: \begin{itemize} \item die Optionen |labelformat=|, |position=auto|, |list=| und |listformat=| \item |\caption*| (um eine Beschrifung ohne Bezeichner zu setzen) \item |\caption[]{|\ldots|}| (um den Eintrag ins Verzeichnis zu unterbinden) \item |\caption{}| (um eine leere Beschriftung ohne Trenner zu setzen) \item |\ContinuedFloat| \item korrekt ausgerichtete Beschriftungen in Umgebungen wie \texttt{wide} und \texttt{addmargin}, die die Seitenränder verändern \item das sog.~\textsf{hypcap}"=Feature \See{\Ref{hyperref}\,} \item Setzen von Unter-Beschriftungen \See{\package{subcaption}"=Paketdokumentation} \end{itemize} \DescribeMacro{compatibility=} Dieser Kompatibilitäts"=Modus kann durch die Angabe der Option \begin{quote} |compatibility=false| \end{quote} beim Laden des \package{caption}"=Paketes ausgeschaltet werden. Aber bitte beachten Sie, daß die Anwendung dieser Option weder empfohlen noch unterstützt wird, da hierdurch unerwünschte Nebeneffekte oder Fehler auftreten können. (Aus diesem Grunde wird hier ebenfalls eine Warnung ausgegeben.) \newcommand\packagedescription[1]{% \ifvmode\else\par\fi \nopagebreak \parbox[b]{\linewidth}{\footnotesize\leftskip=10pt\rightskip=10pt\relax#1}\par \nopagebreak\smallskip\nopagebreak} \PageBreak \subsection{algorithms} \label{algorithms} \packagedescription{% Die \package{algorithms}"=Paketfamilie\cite{algorithms} bietet zwei Umgebungen an: Die Umgebung \texttt{algorithmic} bietet eine Möglichkeit, Algorithmen zu beschreiben, und die Umgebung \texttt{algorithm} bietet eine passende Gleitumgebung an.} Da die \texttt{algorithm}"=Umgebung intern mittels |\new|\-|float| realisiert ist, welches vom \package{float}"=Paket\cite{float} bereitgestellt wird, schauen Sie bitte in \Ref{float} nach. \iffalse \pagebreak[3] \subsection{algorithm2e} \label{algorithm2e} \packagedescription{% The \package{algorithm2e} package\cite{algorithm2e} offers an environment for writing algorithms in LaTeX2e.} Since the \package{algorithm2e} package does not use some kind of standard interface for defining its floating environment (e.g.~|\newfloat| of the \package{float} package) and typesetting its caption, the \package{algorithm2e} package is \emph{not} supported by \thispackage. So if you want to customize the captions using \thispackage, you have to build a new environment which uses a supported interface regarding floats (e.g. using the \package{float} or \package{floatrow} package), and combine this environment with the internal \package{algorithm2e} code. As first step you could define a non-floating environment \texttt{algorithmic}, for example: \begin{quote} |\usepackage{algorithm2e}|\\ |% save the "algorithm" environment from the algorithm2e package|\\ |\let\ORIGalgorithm\algorithm|\\ |\let\ORIGendalgorithm\endalgorithm|\\ |% define the algorithmic environment|\\ % , based on the saved environment |\newenvironment{algorithmic}%|\\ | {\renewenvironment{algocf}[1][h]{}{}% pass over floating stuff|\\ | \ORIGalgorithm}%|\\ | {\ORIGendalgorithm}|\\ \ldots \end{quote} Having defined this non-floating environment, you could define your own new floating environment with |\newfloat| of the \package{float} package (or |\DeclareNewFloatType| of the \package{floatrow} package), and use the combination of this floating environment and \texttt{algorithmic} in its body, just like you would do when you use the \package{algorithm}/\package{algorithmic} package tandem. You could even use the \package{algorithm} package for this purpose, for example: \begin{quote} \ldots\\ |% load the algorithm package to re-define the|\\ |% floating environment "algorithm" and \listofalgorithms|\\ |\let\listofalgorithms\undefined|\\ |\usepackage{algorithm}|\\ \ldots\\ |% Example usage:|\\ |\begin{algorithm}|\\ |\caption{An algorithm}|\\ |\begin{algorithmic}|\\ | \SetVline|\\ | \eIf{cond1}{|\\ | a line\;|\\ | }{|\\ | another line\;|\\ | }|\\ |\end{algorithmic}| \end{quote} Now you are finally able to customize the float and caption layout like every other floating environment defined with the \package{float} package\cite{float}, please see \Ref{float}. \begin{Annotation} An alternative would be using the \package{algorithmicx} package. \end{Annotation} \fi \pagebreak[3] \subsection{float} \label{float} \packagedescription{% Das \package{float}"=Paket\cite{float} bietet den Befehl \cs{restylefloat} an, der bestehende Gleitumgebungen zu einem neuen Design verhilft, ferner \cs{newfloat} um neue Gleitumgebungen zu definieren. Weiterhin wird die Platzierungs-Option "`\texttt{H}"' angeboten, die bei Gleitumgebungen das Gleiten unterbindet.} Bei Gleitumgebungen, die mit \cs{newfloat} oder \cs{restylefloat} definiert wurden, hat die Option |po|\-|si|\-|tion=| keinen Effekt auf die Beschriftung, da die Platzierung und die Abstände von dem gewählten Gleitumgebungs"=Stil festgelegt werden. Ein Beschriftungs"=Stil und Beschriftungs"=Optionen mit demselben Namen wie der Gleitumgebungs"=Stil werden zusätzlich zu den normalen Optionen ausgewählt. Mit diesem Mechanismus emuliert \thispackage\ das Aussehen der Beschriftungen vom Stil "`|ruled|"': Es definiert den Beschriftungs"=Stil \begin{quote} |\DeclareCaptionStyle{ruled}%|\\ | {labelfont=bf,labelsep=space,strut=off}|\mbox{\quad.} \end{quote} Um dies zu ändern, müssen Sie entweder einen eigenen Stil namens "`|ruled|"' definieren, oder aber mit |\caption|\-|setup[ruled]|\marg{Optionen} zusätzliche Optionen angeben.%, %z.B.~|\caption|\-|setup[ruled]{labelsep=|\x|colon}|. Dieser Mechanismus wird ebenso benutzt, um den Abstand zwischen einer Gleitumgebung vom Stil "`|boxed|"' und seiner Beschriftung individuell festzulegen: \begin{quote} |\captionsetup[boxed]{skip=2pt}| \end{quote} Um dies zu ändern, geben Sie einfach mit |\caption|\-|setup[boxed]{skip=|\x\meta{Wert}|}| einen anderen Wert an. Oder wenn Sie stattdessen die globale Einstellung der Option |skip=| verwenden wollen, können Sie die individuelle Abstandseinstellung mit |\clear|\-|caption|\-|setup[skip]{boxed}| entfernen. \begin{Note} Es kann immer nur \emph{eine} Beschriftung innerhalb der Gleitumgebungen gesetzt werden, die mit |\new|\-|float| oder |\re|\-|style|\-|float| definiert werden; außerdem verhalten sich diese Gleitumgebungen auch in anderen Belangen nicht exakt wie die Umgebungen |figure| und |table|. Als Konsequenz arbeiten viele Pakete nicht sehr gut mit diesen zusammen. Weiterhin hat das \package{float}"=Paket einige Fallstricke und Schwächen, weswegen ich als Alternative das \package{newfloat}"=Paket anbiete, um neue Gleitumgebungen zu definieren, die sich wie |figure| und |table| verhalten sollen. Und für die Definition von mächtigeren Gleitumgebungen bzw.~der stilistischen Umgestaltung von vorhandenen Gleitumgebungen empfehle ich als Alternative den Befehl |\Declare|\-|New|\-|Float|\-|Type| des moderneren \package{floatrow}"=Paketes\cite{floatrow}. \end{Note} \iffalse Please also note that you \emph{don't} need a |\restyle|\-|float| for using the ``|H|'' float placement specifier. Some docs say so, but they are wrong. And |\restyle|\-|float{table}| is a very good method to shoot yourself in the foot, since many packages using |table| internally are not working correctly afterwards. \fi \pagebreak[3] \subsection{floatflt} \label{floatflt} \packagedescription{% Das \package{floatflt}"=Paket\cite{floatflt} bietet Umgebungen zum Setzen von Abbildungen und Tabellen an, die nicht die Gesamtbreite der Seite einnehmen, sondern stattdessen vom Text umflossen werden.} \NEWfeature{v3.1} Spezielle Optionen für die Umgebungen |float|\-|ing|\-|figure| und |float|\-|ing|\-|table| können mit \begin{quote} |\captionsetup[floatingfigure]|\marg{Optionen}\quad\emph{und}\\ |\captionsetup[floatingtable]|\marg{Optionen} \end{quote} festgelegt werden. Diese Einstellungen werden dann zusätzlich zu denjenigen für |figure| bzw.~|table| berücksichtigt. \begin{Note} Die Einstellungen |margin=| bzw.~|width=| werden nicht auf diese Abbildungen bzw.~Tabellen angewandt, solange sie nicht explizit mit |\caption|\-|setup[floating|\-|figure]{|\ldots|}| bzw.~|\caption|\-|setup[floating|\-|table]{|\ldots|}| gesetzt werden. \end{Note} \pagebreak[3] \subsection{fltpage} \label{fltpage} \packagedescription{% Das \package{fltpage}"=Paket\cite{fltpage} bietet die Ausgliederung der Beschriftung für Abbildungen und Tabellen, die die gesamte Seitenhöhe einnehmen, an. Hierbei wird die Beschriftung ans Ende der vorherigen oder nächsten Seite verschoben.} \iffalse \NEWfeature{v3.1} Zwei Optionen regeln die Verweise auf die Umgebungen |FPfigure| und |FPtable|: \begin{description} \item{\texttt{FPlist=caption} oder \texttt{FPlist=figure}}\\[\smallskipamount] Auf "`|caption|"' gesetzt, wird der Verzeichniseintrag auf die Beschriftung der Abbildung bzw.~Tabelle verweisen, auf "`|figure|"' gesetzt auf den Inhalt der Abbildung. (Die Vorbelegung ist |FP|\-|list=|\x|caption|.) \item{\texttt{FPref=caption} oder \texttt{FPref=figure}}\\[\smallskipamount] Auf "`|caption|"' gesetzt, werden die mit \cs{ref}, \cs{pageref}, \cs{autoref} oder \cs{nameref} plazierten Referenzen auf die Beschriftung der Abbildung bzw.~Tabelle verweisen, auf "`|figure|"' gesetzt auf den Inhalt der Abbildung. (Die Vorbelegung ist |FP|\-|ref=|\x|figure|.) \end{description} \fi Spezielle Einstellungen für die Umgebungen |FPfigure| und |FPtable| können mit \begin{quote} |\captionsetup[FPfigure]|\marg{Optionen}\quad\emph{und}\\ |\captionsetup[FPtable]|\marg{Optionen} \end{quote} getätigt werden. Diese Einstellungen werden dann zusätzlich zu denjenigen für |figure| bzw.~|table| berücksichtigt. \pagebreak[3] \subsection{hyperref} \label{hyperref} \packagedescription{% Das \package{hyperref}"=Paket\cite{hyperref} behandelt \LaTeX"=Querverweise derart, daß sie zusätzlich Hyperlinks im Dokument erzeugen.} \NEWfeature{v3.1} Zwei Optionen regeln das Setzen von Hyperlinks:~\footnote{Diese Optionen sind nach dem \package{hypcap}"=Paket benannt, welches sie ersetzen.} \begin{description} \item{\texttt{hypcap=true} oder \texttt{hypcap=false}}\\[\smallskipamount] Auf |true| gesetzt, werden alle Hyperlink"=Anker -- wohin Einträge im Abbildungs- und Tabellenverzeichnis, sowie |\ref| und |\auto|\-|ref| verweisen -- an den Anfang der (gleitenden) Umgebungen wie Abbildung oder Tabelle plaziert.\par Auf |false| gesetzt zeigen hingegen alle Hyperlink"=Anker auf die Beschriftung.\par (Die Voreinstellung ist |hypcap=true|.) \item{\texttt{hypcapspace=}\meta{Abstand}}\\[\smallskipamount] Da es nicht sehr ästhetisch wirkt, wenn der Hyperlink exakt auf den Beginn der Abbildung bzw.~Tabelle springt, kann ein vertikaler Abstand zwischen dem Hyperlink"=Anker und der (gleitenden) Umgebung gesetzt werden, z.B.~entfernt |hyp|\-|cap|\-|space=|\x|0pt| diesen Abstand.\par (Die Voreinstellung ist |hyp|\-|cap|\-|space=|\x|0.5\base|\-|line|\-|skip|.) \end{description} Beide Optionen haben keine Auswirkung in den Umgebungen |lst|\-|listing| (vom \package{listings}"=Paket bereitgestellt), |long|\-|table| (vom \package{longtable}"=Paket bereitgestellt, |super|\-|tabular| (vom \package{supertabular}"=Paket bereitgestellt), und |x|\-|tabular| (vom \package{xtab}"=Paket bereitgestellt); innerhalb dieser Umgebungen werden Hyperlink"=Anker immer so gesetzt, als sei |hyp|\-|cap=|\x|true| und |hyp|\-|cap|\-|space=|\x|0pt| eingestellt. \pagebreak[3]Bitte beachten Sie:\nopagebreak \begin{description} \item{\cs{captionof}\marg{Typ}\csmarg{\purerm\ldots} vs.~\cs{captionsetup}\csmarg{type=\textrm{\meta{Typ}}}$+$\cs{caption}\csmarg{\purerm\ldots}}% \\[\smallskipamount] Ohne geladenes \package{hyperref}"=Paket bekommen Sie hier identische Resultate. Aber mit \package{hyperref} geladen und mit der Einstellung |hyp|\-|cap=|\x|true| versehen wird der Hyperlink"=Anker unterschiedlich gesetzt. So plaziert zum Beispiel \begin{quote} |\begin{minipage}{\linewidth}|\\ | |\ldots\\ | \captionof{figure}{Eine Abbildung}|\\ |\end{minipage}| \end{quote} den Anker bei der Beschriftung. (Und wenn |hyp|\-|cap=|\x|true| gesetzt ist, wird deswegen eine Warnung ausgegeben.) \begin{quote} |\begin{minipage}{\linewidth}|\\ | \captionsetup{type=figure}|\\ | |\ldots\\ | \caption{Eine Abbildung}|\\ |\end{minipage}| \end{quote} hingegen plaziert den Anker an den Anfang der |mini|\-|page|, da die Anweisung |\caption|\-|setup{type=|\x|figure}| nicht nur den Typ der Beschriftung auf "`figure"' festlegt, sondern auch einen Hyperlink"=Anker setzt. \item{\cs{caption}\csoarg{}\csmarg{\purerm\ldots} vs.~\cs{captionsetup}\csmarg{list=false}$+$\cs{caption}\csmarg{\purerm\ldots}}\\[\smallskipamount] Wiederum bekommen Sie ohne geladenes \package{hyperref}"=Paket identische Resultate. Aber mit \package{hyperref} geladen liegen die Unterschiede in den Feinheiten: So wird z.B.~das optionale Argument von |\caption| auch in die |aux|-Datei geschrieben und vom |\name|\-|ref| Befehl verwendet. Wenn Sie also |\caption| mit leerem Argument angeben, wird ein auf diese Abbildung oder Tabelle angewandtes |\name|\-|ref| nicht das erwünschte, sondern stattdessen ein leeres Resultat zur Folge haben. Daher ist es besser, |\caption|\-|setup{list=|\x|false}| zu verwenden, wenn Sie keinen Eintrag in dem Abbildungs- oder Tabellenverzeichnis wünschen. \end{description} \pagebreak[3] \subsection{hypcap} \label{hypcap} \packagedescription{% Das \package{hyp\-cap}"=Paket\cite{hypcap} bietet eine Lösung zu dem Problem an, daß Hyperlinks auf Gleitumgebungen nicht auf die Abbildung bzw.~Tabelle verweisen, sondern stattdessen auf die Beschriftung. Die Version $3.1$ des \package{caption}"=Paketes löst dieses Problem bereits auf seine eigene Art und Weise, so daß das \package{hypcap}"=Paket in der Regel nicht mehr zusätzlich benötigt wird.} Wird das \package{hypcap}"=Paket zusätzlich zum \package{hyperref}"=Paket geladen, so übernimmt es die Kontrolle über die Platzierung der Hyperlink"=Anker, und die Optionen |hyp|\-|cap=| und |hyp|\-|cap|\-|space=| verlieren ihre Wirkung. Außerdem ist zu beachten, daß dann |\caption|\-|setup{type=|\x\meta{Typ}|}| keinen Hyperlink"=Anker mehr setzt; dies muß dann ggf.~mit dem Befehl |\cap|\-|start|, welcher vom \package{hypcap}"=Paket angeboten wird, geschehen. Weiterhin hat das Laden des \package{hypcap}"=Paketes den Nebeneffekt, daß die Hyperlink"=Anker innerhalb der Umgebungen |floating|\-|figure| (vom \package{float\-flt}"=Paket bereitgestellt), |FP|\-|figure| \& |FPtable| (vom \package{flt\-page}"=Paket bereitgestellt), |fig|\-|window| (vom \package{pic\-in\-par}"=Paket bereitgestellt), |par|\-|pic| (vom \package{pic\-ins}"=Paket bereitgestellt), |SC|\-|figure| (vom \package{side\-cap}"=Paket bereitgestellt), |three|\-|part|\-|table| (vom \package{three\-part\-table}"=Paket bereitgestellt) und |wrap|\-|figure| (vom \package{wrap\-fig}"=Paket bereitgestellt) nicht mehr optimal platziert werden. \pagebreak[3] \subsection{listings} \label{listings} \packagedescription{% Das \package{listings}"=Paket\cite{listings} bietet Möglichkeiten, Programmcode zu setzen.} Spezielle Einstellungen für die Umgebung |lst|\-|listing| können mit \begin{quote} |\captionsetup[lstlisting]|\marg{Optionen} \end{quote} getätigt werden. Bitte beachten Sie, daß das \package{listings}"=Paket seine eigenen Optionen für die Kontrolle der Position und Abstände der Beschriftungen mitbringt: |caption|\-|pos=|, |above|\-|caption|\-|skip=| und |below|\-|caption|\-|skip=|. \See{Dokumentation des \package{listings}"=Paketes.} Diese Optionen überschreiben diejenigen des \package{caption}"=Paketes, können aber wiederum mit |\caption|\-|setup[lst|\-|listing]{|\ldots|}| überschrieben werden, z.B.~mit \begin{quote}|\caption|\-|setup[lst|\-|listing]{skip=|\x|10pt}|\quad.\end{quote} \pagebreak[3] \subsection{longtable} \label{longtable} \packagedescription{% Das \package{longtable}"=Paket\cite{longtable} bietet eine Umgebung an, die sich ähnlich wie die Umgebung \texttt{tabular} verhält, aber Seitenumbrüche innerhalb der Tabelle erlaubt.} Spezielle Einstellungen für die Umgebung |long|\-|table| können mit \begin{quote} |\captionsetup[longtable]|\marg{Optionen} \end{quote} getätigt werden. Diese Einstellungen werden dann zusätzlich zu denjenigen für |table| berücksichtigt. Die Optionen |margin=| und |width=| überschreiben gewöhnlich die Länge |\LT|\-|cap|\-|width|, so daß ein einheitliches Aussehen der Tabellenüberschriften gewährleistet wird. Wird aber |\LT|\-|cap|\-|width| auf einen anderen Wert als den Standardwert |4in| gesetzt, wird \thispackage\ dies berücksichtigen. (Aber |\LT|\-|cap|\-|width| wird wiederum von |\caption|\-|setup[long|\-|table]{width=|\x\meta{Breite}|}| überschrieben, auch wenn |\LT|\-|cap|\-|width| auf einen anderen Wert als |4in| gesetzt ist.) \begin{Note} Die Befehle |\caption|\-|of| und |\Continued|\-|Float| funktionieren \emph{nicht} innerhalb der Umgebung |long|\-|table|. Weiterhin erhöhen weder |\caption| noch |\caption|\-|list|\-|entry| den Tabellenzähler, er wird stattdessen von der Umgebung |long|\-|table| selbst erhöht. \NEWfeature{v3.1} Benötigen Sie eine Umgebung |long|\-|table|, die den Tabellenzähler nicht erhöht, so verwenden Sie bitte die Umgebung |long|\-|table*| (die das \package{ltcaption}"=Paket bereitstellt und als Bestandteil der \package{caption}"=Paketfamilie automatisch geladen wird). \end{Note} \pagebreak[3] \subsection{picinpar} \label{picinpar} \packagedescription{% Ähnlich wie das \package{floatflt}"=Paket stellt auch das \package{picinpar}"=Paket Umgebungen zum Setzen von Abbildungen und Tabellen zur Verfügung, die nicht die gesamte Seitenbreite ausfüllen und vom Text umflossen werden. Für eine detailierte Beschreibung der Unterschiede zwischen diesen Paketen schauen Sie bitte in den "`LaTeX Begleiter"'\cite{TLC2}.} \NEWfeature{v3.1} Spezielle Einstellungen für die Umgebungen |fig|\-|window| und |tab|\-|window| können mit \begin{quote} |\captionsetup[figwindow]|\marg{Optionen}\quad\emph{und}\\ |\captionsetup[tabwindow]|\marg{Optionen} \end{quote} getätigt werden. Diese Einstellungen werden dann zusätzlich zu denjenigen für |figure| bzw.~|table| berücksichtigt. \begin{Note} Die Einstellungen |margin=| bzw.~|width=| werden nicht auf diese Abbildungen bzw.~Tabellen angewandt, solange sie nicht explizit mit |\caption|\-|setup[fig|\-|window]{|\ldots|}| bzw.~|\caption|\-|setup[tab|\-|window]{|\ldots|}| gesetzt werden. \end{Note} \pagebreak[3] \subsection{picins} \label{picins} \packagedescription{% Ähnlich wie das \package{floatflt}- und \package{picinpar}"=Paket stellt auch das \package{picins}"=Paket Umgebungen zum Setzen von Abbildungen und Tabellen zur Verfügung, die nicht die gesamte Seitenbreite ausfüllen und vom Text umflossen werden. Für eine detailierte Beschreibung der Unterschiede zwischen diesen Paketen schauen Sie bitte in den "`LaTeX Begleiter"'\cite{TLC2}.} \NEWfeature{v3.1} Spezielle Einstellungen für die Umgebung |par|\-|pic| können mit \begin{quote} |\captionsetup[parpic]|\marg{Optionen} \end{quote} getätigt werden. Diese Einstellungen werden dann zusätzlich zu denjenigen für |figure| bzw.~|table| berücksichtigt. Weiterhin erzeugt |\pic|\-|caption[]{|\ldots|}| keinen Verzeichniseintrag, und |\pic|\-|caption*{|\ldots|}| ergibt eine Beschriftung ohne Bezeichner und Nummerierung. \begin{Note} Die Einstellungen |margin=| bzw.~|width=| werden nicht auf diese Abbildungen bzw.~Tabellen angewandt, solange sie nicht explizit mit |\caption|\-|setup[par|\-|pic]{|\ldots|}| gesetzt werden. \end{Note} Wird ein |\pic|\-|caption| gewünscht, das keine Abbildungs-, sondern eine Tabellenbeschrifung erzeugt, so definieren Sie bitte \emph{nicht} |\@cap|\-|type| um, wie es von der Dokumentation zum \package{picins}"=Paket vorgeschlagen wird. Stattdessen benutzen Sie bitte den Befehl |\pic|\-|caption|\-|type|\marg{Typ}, der Ihnen vom \package{caption}"=Paket zu diesem Zweck bereitgestellt wird. Zum Beispiel: \begin{quote} |\piccaptiontype{table}|\\ |\piccaption{Eine Beispieltabelle}|\\ |\parpic(50mm,10mm)[s]{|\ldots|}| \end{quote} \pagebreak[3] \subsection{rotating} \label{rotating} \packagedescription{% Das \package{rotating}"=Paket\cite{rotating} bietet die Gleitumgebungen \texttt{side\-ways\-figure} und \texttt{side\-ways\-table}, die sich wie \texttt{figure} und \texttt{table} verhalten, den Inhalt aber um 90 bzw. 270 Grad drehen. Weiterhin wird ein Befehl \cs{rot\-caption} bereitgestellt, der lediglich die Beschriftung dreht.} \iffalse % No, we don't do that If you want to setup special options for the |side|\-|ways|\-|figure| \& |side|\-|ways|\-|table| environments you can use \begin{quote} |\captionsetup[sidewaysfigure]|\marg{options}\\ |\captionsetup[sidewaystable]|\marg{options}\quad. \end{quote} These options will be executed additionally to the regular ones for |figure| or |table|. \fi Der Befehl |\rot|\-|caption| wird vom \package{caption}"=Paket derart erweitert, daß |\rot|\-|caption*| und |\rot|\-|caption|\-|of| analog zu |\caption*| und |\caption|\-|of| verwendet werden können. \pagebreak[3] \subsection{setspace} \label{setspace} \packagedescription{% Das \package{setspace}"=Paket\cite{setspace} bietet Optionen und Befehle, um den Zeilenabstand festzulegen, so führt z.B.\ \cs{usepackage}\x\csoarg{one\-half\-spacing}\x\csmarg{set\-space} zu einem Dokument, welches einanhalbzeilig gesetzt wird.} Wird das \package{setspace}"=Paket zusammen mit dem \package{caption}"=Paket verwendet, sind alle Abbildungs- und Tabellenbeschriftungen auf "`einzeilig"' voreingestellt. Dies kann durch |font=|\x|one|\-|half|\-|spacing| (welches auf "`einanhalbzeilig"' umstellt), |font=|\x|double|\-|spacing| (welches auf "`zweizeilig"' umstellt) oder |font={stretch=|\x\meta{Wert}|}| geändert werden. \See{auch \Ref{fonts}} \pagebreak[3] \subsection{sidecap} \label{sidecap} \packagedescription{% Das \package{sidecap}"=Paket\cite{sidecap} bietet die Gleitumgebungen \texttt{SC\-figure} und \texttt{SC\-table}, die anders als \texttt{figure} und \texttt{table} die Beschriftung \emph{neben} den Inhalt setzen.} Spezielle Einstellungen für die Umgebungen |SC|\-|figure| und |SC|\-|table| können mit \begin{quote} |\captionsetup[SCfigure]|\marg{Optionen}\quad\emph{und}\\ |\captionsetup[SCtable]|\marg{Optionen} \end{quote} getätigt werden. Diese Einstellungen werden dann zusätzlich zu denjenigen für |figure| bzw.~|table| berücksichtigt. \pagebreak[3] \begin{Note} Das \package{sidecap}"=Paket bietet eigene Optionen für die Ausrichtung der Beschriftung. Werden diese verwendet, so überschreiben sie die Einstellungen, die mit der Option |jus|\-|ti|\-|fi|\-|ca|\-|tion=| getätigt worden sind. \end{Note} \begin{Note} Die Einstellungen |margin=| bzw.~|width=| werden nicht auf diese Abbildungen bzw.~Tabellen angewandt, solange sie nicht explizit mit |\caption|\-|setup[SC|\-|figure]{|\ldots|}| bzw.~|\caption|\-|setup[SC|\-|table]{|\ldots|}| gesetzt werden. \end{Note} \medskip \begin{Annotation*} Anstelle des \package{sidecap}"=Paketes können Sie für Beschrifungen neben der Abbildung bzw.~Tabelle auch das leistungsfähigere und vielseitigere \package{floatrow}"=Paket\cite{floatrow} benutzen. \end{Annotation*} \pagebreak[3] \subsubsection*{Undokumentierte Eigenschaften} Das \package{sidecap}"=Paket \version{1.6} hat einige undokumentierte Paketoptionen und Befehle, die eine weitere Anpassung der Beschrifungen erlauben: \pagebreak[3] \DescribeMacro{margincaption} Die Paketoption \begin{quote} |margincaption|\qquad{\small(z.B.~|\usepackage[margincaption]{sidecap}|)} \end{quote} führt dazu, daß alle Beschriftungen in den Umgebungen |SC|\-|figure| und |SC|\-|table| in den Rand gesetzt werden. \pagebreak[3] \DescribeMacro{\sidecaptionvpos} Der Befehl \begin{quote} |\sidecaptionvpos|\marg{Typ}\marg{Position} \end{quote} legt die vertikale Ausrichtung der Beschriftung fest. \meta{Position} kann entweder `|t|' (für eine Ausrichtung am oberen Rand), `|b|' (für eine Ausrichtung am unteren Rand), oder `|c|' (für eine zentrierte Ausrichtung) sein. Die Vorbelegung für die Umgebung |table| ist `|t|', für |figure| und alle anderen, die mit |\Declare|\-|Floating|\-|Environment| definiert werden, `|b|'. \pagebreak[3] \subsection{subfigure} \label{subfigure} \packagedescription{% Das \package{subfigure}"=Paket\cite{subfigure} bietet Unterstützung für Unter"=Abbildungen und -Tabellen. Es ist veraltet und wurde vom Autor durch das modernere \package{subfig}"=Paket ersetzt.} Da das \package{subfigure}"=Paket veraltet ist, wird es vom \package{caption}"=Paket nur derart unterstützt, daß alte Dokumente (welche mit dem \package{caption}"=Paket \version{1.x} gesetzt wurden) noch übersetzbar sind und das erwartete Ergebnis liefern. Bitte verwenden Sie daher stattdessen das \package{subfig}- oder das \package{subcaption}"=Paket, welches \thispackage\ \version{3.x} aktiv unterstützt. \See{auch Dokumentation des \package{subfig}"=Paketes\cite{subfig}} \pagebreak[3] \subsection{supertabular und xtab} \label{supertabular} \packagedescription{% Die Pakete \package{supertabular}\cite{supertabular} und \package{xtab}\cite{xtab} bieten eine Umgebung, die ähnlich wie die Umgebung \texttt{long\-table} des \package{longtable}"=Paketes\cite{longtable} einen Seitenumbruch inmitten der Tabelle erlaubt. Für eine detailierte Beschreibung der Unterschiede zwischen diesen Paketen schauen Sie bitte in den "`LaTeX Begleiter"'\cite{TLC2}.} Spezielle Einstellungen für die Umgebung |super|\-|tabular| bzw.~|x|\-|tabular| können mit \begin{quote} |\captionsetup[supertabular]|\marg{Optionen}\quad\emph{bzw.}\\ |\captionsetup[xtabular]|\marg{Optionen} \end{quote} getätigt werden. Diese Einstellungen werden dann zusätzlich zu denjenigen für |table| berücksichtigt. \begin{Note} Der Befehl |\Continued|\-|Float| funktioniert \emph{nicht} innerhalb der Umgebungen |super|\-|tabular| und |x|\-|tabular|. \end{Note} \pagebreak[3] \subsection{threeparttable} \label{threeparttable} \packagedescription{% Das \package{threeparttable}"=Paket\cite{threeparttable} bietet ein Schema für Tabellen, welches strukturierte Anmerkungen nach dem Tabelleninhalt erlaubt. Dieses Schema bietet eine Lösungsmöglichkeit für das alte Problem "`Fußnoten in Tabellen"'.} \NEWfeature{v3.1} Spezielle Einstellungen für die Umgebungen |three|\-|part|\-|table| und |measured|\-|figure| können mit \begin{quote} |\captionsetup[threeparttable]|\marg{Optionen}\quad\emph{und}\\ |\captionsetup[measuredfigure]|\marg{Optionen} \end{quote} getätigt werden. Diese Einstellungen werden dann zusätzlich zu denjenigen für |figure| bzw.~|table| berücksichtigt. \begin{Note} Da die Breite der Beschriftung hier die gleiche Breite wie die Abbildung bzw.~Tabelle hat, werden die Einstellungen |margin=| bzw.~|width=| hier nicht angewandt, solange sie nicht explizit mit |\caption|\-|setup[three|\-|part|\-|table]{|\ldots|}| oder |\caption|\-|setup[measured|\-|figure]{|\ldots|}| gesetzt werden. \end{Note} \medskip \begin{Annotation*} Das \package{floatrow}"=Paket\cite{floatrow} bietet eine vergleichbare Funktionalität an. \end{Annotation*} \pagebreak[3] \subsection{wrapfig} \label{wrapfig} \packagedescription{% Ähnlich wie das \package{floatflt}-, \package{picinpar}- und \package{picins}"=Paket stellt auch das \package{wrapfig}"=Paket Umgebungen zum Setzen von Abbildungen und Tabellen zur Verfügung, die nicht die gesamte Seitenbreite ausfüllen und vom Text umflossen werden. Für eine detailierte Beschreibung der Unterschiede zwischen diesen Paketen schauen Sie bitte in den "`LaTeX Begleiter"'\cite{TLC2}.} \NEWfeature{v3.1} Spezielle Einstellungen für die Umgebungen |wrap|\-|figure| und |wrap|\-|table| können mit \begin{quote} |\captionsetup[wrapfigure]|\marg{Optionen}\quad\emph{und}\\ |\captionsetup[wraptable]|\marg{Optionen} \end{quote} getätigt werden. Diese Einstellungen werden dann zusätzlich zu denjenigen für |figure| bzw.~|table| berücksichtigt. \begin{Note} Die Einstellungen |margin=| bzw.~|width=| werden nicht auf diese Abbildungen bzw.~Tabellen angewandt, solange sie nicht explizit mit |\caption|\-|setup[wrap|\-|figure]{|\ldots|}| bzw.~|\caption|\-|setup[wrap|\-|table]{|\ldots|}| gesetzt werden. \end{Note} % --------------------------------------------------------------------------- % \clearpage \section{Weiterführende Dokumente} Folgende, im Internet verfügbare Dokumente möchte ich an dieser Stelle jedem ans Herz legen: \begin{itemize} \item Die \TeX\ FAQ -- "`Frequently Asked Questions"' über \TeX\ und \LaTeX: \begin{quote}\url{http://faq.tug.org/}\end{quote} \iffalse % Völlig veraltet, daher leider keine Empfehlung mehr wert \item Die DANTE-FAQ -- Oft gestellte Fragen \& deren Antworten: \begin{quote}\url{http://www.dante.de/faq/de-tex-faq/}\end{quote} \fi \item \emph{"`Hilfe für LaTeX-Einsteiger"'} von Christian Faulhammer: \begin{quote}\url{http://www.minimalbeispiel.de/}\end{quote} \item \emph{"`Bilder einfügen in \LaTeX: Ein How-To"'} von Dominik Bischoff beinhaltet die häufigsten Fragen und Antworten, die im Zusammenhang mit \LaTeX\ und Abbildungen auftreten: \begin{quote} \url{http://mirror.ctan.org/info/l2picfaq/german/l2picfaq.pdf} \end{quote} \item \emph{"`Gleitobjekte -- die richtige Schmierung"'} von Axel Reichert erl"autert den Umgang mit gleitenden Umgebungen und ist hier im Netz zu finden: \begin{quote} \url{http://mirror.ctan.org/info/german/gleitobjekte/} \end{quote} \item \textsf{epslatex} von Keith Reckdahl enth"alt viele n"utzliche Tips im Zusammenhang mit der Einbindung von Graphiken in \LaTeXe. Das Dokument ist in Englisch und unter \begin{quote}\url{http://mirror.ctan.org/info/epslatex/}\end{quote} zu finden. \end{itemize} % --------------------------------------------------------------------------- % \pagebreak[3] \section{Danksagungen} Von ganzem Herzen danke ich Katja Melzner, Steven D. Cochran, Frank Mittelbach, Olga Lapko, David Carlisle, Carsten Heinz, Keith Reckdahl, Markus Kohm, Heiko Oberdiek und Herbert Voß. Weiterhin möchte ich mich herzlich bei Harald Harders, Peter Löffler, Peng Yu, Alexander Zimmermann, Matthias Pospiech, Jürgen Wieferink, Christoph Bartoschek, Uwe Stöhr, Ralf Stubner, Geoff Vallis, Florian Keiler, Jürgen Göbel, Uwe Siart, Sang-Heon Shim, Henrik Lundell, David Byers, William Asquith, Prof.~Dr.~Dirk Hoffmann, Frank Martini, Danie Els, Philipp Woock, Fadi Semmo, Matthias Stevens und Leo Liu für ihre Hilfe beim stetigen Verbessern dieses Paketes bedanken. % --------------------------------------------------------------------------- % \clearpage\appendix \section{Alphabetische Referenz} %\newenvironment{Warnings}% % {\begin{trivlist}% % \def\Message{\pagebreak[3]\leftskip=0pt\relax\item[]\color{blue}}% % \def\Description{\nopagebreak\par\nopagebreak\color{black}\leftskip=1.5em\nopagebreak}% % }% % {\color{black}\end{trivlist}} \makeatletter \newenvironment{Warnings}{% \newif\ifMessage \def\Message{% \ifMessage\end{minipage}\par\vspace\itemsep\pagebreak[3]\fi \begin{minipage}{\linewidth}% \setlength\parindent{0pt}% \setlength\parskip{\smallskipamount}% \setlength\leftskip{0pt}% \color{blue}% \Messagetrue}% \def\Description{% \par\color{black}\leftskip=1.5em}% \def\Or{\@testopt\@Or{oder}}% \def\@Or[##1]{% \\{\small\color{black}\hspace{1.5em}\textit{-- ##1 --}}\\}% }{% \ifMessage\end{minipage}\par\fi } \makeatother \subsection{Optionen} \newcommand\preambleoption{~% \begingroup\def\thefootnote{\fnsymbol{footnote}}% \footnotemark[2]% \endgroup} \newcommand\preambleoptiontext{% \begingroup\def\thefootnote{\fnsymbol{footnote}}% \footnotetext[2]{Diese Optionen stehen nur in dem Dokumentenvorspann (Präambel) zur Verfügung.}% \endgroup} \begin{longtable*}{lll} Option & Kurzbeschreibung & Abschnitt \\ \hline \endhead |aboveskip| & setzt den Abstand über der Beschriftung & \ref{skips} \\ |belowskip| & setzt den Abstand unter der Beschriftung & \ref{skips} \\ |compatibility|\preambleoption & erzwingt (Nicht-)Kompatibilität & \ref{compatibility} \\ %|config| & & \ref{x} \\ |figureposition|\preambleoption & gibt einen Hinweis auf die Position & \ref{skips} \\ |font|(|+|) & wählt den Zeichensatz & \ref{fonts} \\ |format| & wählt das Format & \ref{formats} \\ \iffalse |FPlist| & Wohin soll der Listeneintrag einer FPfigure zeigen? & \ref{fltpage} \\ |FPref| & Wohin soll ein |\ref| einer FPfigure zeigen? & \ref{fltpage} \\ \fi |hangindent| & setzt den "`hängenden"' Einzug & \ref{margins} \\ |hypcap| & wählt das "`hypcap"' Feature aus & \ref{hyperref} \\ |hypcapspace| & setzt den Abstand über einem Hyperlink & \ref{hyperref} \\ |indention| & setzt den Einzug & \ref{margins} \\ |justification| & wählt die Ausrichtung & \ref{justification} \\ |labelfont|(|+|) & wählt den Zeichensatz des Bezeichners & \ref{fonts} \\ |labelformat| & wählt das Format des Bezeichners & \ref{formats} \\ |labelsep| & wählt den Trenner zw. Bezeichner$+$Text & \ref{formats} \\ |labelseparator| & -- identisch mit |labelsep| -- & \ref{formats} \\ |list| & schaltet die Listeneinträge an bzw. aus & \ref{lists} \\ |listformat| & wählt das Listenformat & \ref{lists} \\ |margin| & setzt den Rand bzw. die Ränder & \ref{margins} \\ |margin*| & setzt den Rand, sofern keine Breite gesetzt ist & \ref{margins} \\ |maxmargin| & setzt den max. zu verwendenen Rand & \ref{margins} \\ |minmargin| & setzt den min. zu verwendenen Rand & \ref{margins} \\ |name| & setzt den Namen der aktuellen Umgebung & \ref{names} \\ |oneside| & wählt den einseitigen Modus & \ref{margins} \\ |options| & führt die angegebene Optionsliste aus & \\ |parindent| & setzt den Absatzeinzug & \ref{margins} \\ |parskip| & setzt den Absatzabstand & \ref{margins} \\ |position| & gibt einen Hinweis auf die Position & \ref{skips} \\ |singlelinecheck| & schaltet die "`Ein-Zeilen-Prüfung"' ein bzw. aus & \ref{justification} \\ %|size| & wählt die Größe des Zeichensatzes & \ref{x} \\ |skip| & setzt den Abstand zwischen Inhalt \& Beschriftung & \ref{skips} \\ |strut| & schaltet die Verwendung von |\strut| ein bzw. aus & \ref{formats} \\ |style| & wählt einen Stil aus & \ref{style} \\ %|style*| & wählt einen Stil aus & \ref{style} \\ |subtype| & setzt den Typ der Unterbeschriftungen & \phantom{t}--~\footnotemark \\ |tableposition|\preambleoption & gibt einen Hinweis auf die Position & \ref{skips} \\ |textfont|(|+|) & wählt den Zeichensatz des Textes & \ref{fonts} \\ |textformat| & wählt das Format des Textes & \ref{formats} \\ |twoside| & wählt den zweiseitigen Modus & \ref{margins} \\ |type| & setzt den Typ \& setzt ggf.~einen Hyperlink-Anker & \ref{types} \\ |type*| & setzt (nur) den Typ & \ref{types} \\ |width| & setzt eine feste Breite & \ref{margins} \\ \end{longtable*} \preambleoptiontext \footnotetext{Die Option \texttt{subtype} ist in der Dokumentation des \package{subcaption}"=Paketes beschrieben.} \nopagebreak\parbox[t]{\linewidth}{% prevent from page break \begin{Note*} Veraltete Optionen sind hier nicht gelistet; diese sind in \Ref{caption1} und \Ref{caption2} zu finden. \end{Note*}} \pagebreak[3] \subsection{Befehle} \begin{longtable*}{lll} Befehl & & Abschnitt \\ \hline \endhead |\abovecaptionskip| & & \ref{skips} \\ %|\AtBeginCaption| & & \ref{hooks} \\ %|\AtEndCaption| & & \ref{hooks} \\ |\belowcaptionskip| & & \ref{skips} \\ |\caption| & & \ref{caption} \\ |\caption*| & & \ref{caption} \\ |\captionlistentry| & & \ref{captionlistentry} \\ |\captionof| & & \ref{caption} \\ |\captionof*| & & \ref{caption} \\ |\captionsetup| & & \ref{captionsetup} \\ |\captionsetup*| & & \ref{captionsetup} \\ |\centerfirst| & & \ref{justification} \\ |\centerlast| & & \ref{justification} \\ |\clearcaptionsetup| & & \ref{captionsetup} \\ |\clearcaptionsetup*| & & \ref{captionsetup} \\ |\ContinuedFloat| & & \ref{ContinuedFloat} \\ |\DeclareCaptionFont| & & \ref{declare} \\ |\DeclareCaptionFormat| & & \ref{declare} \\ |\DeclareCaptionFormat*| & & \ref{declare} \\ |\DeclareCaptionJustification| & & \ref{declare} \\ |\DeclareCaptionLabelFormat| & & \ref{declare} \\ |\DeclareCaptionLabelSeparator| & & \ref{declare} \\ |\DeclareCaptionLabelSeparator*| & & \ref{declare} \\ |\DeclareCaptionListFormat| & & \ref{declare} \\ |\DeclareCaptionOption| & & \ref{declare} \\ |\DeclareCaptionStyle| & & \ref{declare} \\ |\DeclareCaptionSubType| & & --~\footnotemark \\ |\DeclareCaptionTextFormat| & & \ref{declare} \\ |\showcaptionsetup| & & \ref{captionsetup} \\ \end{longtable*} \footnotetext{\cs{DeclareCaptionSubType} ist in der Dokumentation des \package{subcaption}"=Paketes beschrieben.} \clearpage \subsection{Warnungen} \begin{Warnings} \Message |\caption outside box or environment.| \Or |\captionsetup{type=...} outside box or environment.| \Or |\captionsetup{type*=...} or \captionof outside box|\\ | or environment.| \Description |\caption|, |\caption|\-|of| sowie |\caption|\-|setup{type=|\x\meta{type}|}| sind nur für die Anwendung \emph{innerhalb} einer Box, Gruppe oder Umgebung konzipiert. Außerhalb können unerwünschte Seiteneffekte auftreten. \par\See{\Ref{types} und \Ref{caption}} \Message |\caption will not be redefined since it's already|\\ |redefined by a document class or package which is|\\ |unknown to the caption package.| \Description Wenn \thispackage\ eine vorhandene (und unbekannte) Erweiterung des Befehls |\caption| erkannt hat, definiert es |\caption| nicht erneut um, da dies unweigerlich den Verlust der ursprünglichen Erweiterung zur Folge hätte. Daher funktionieren manche Features, wie |\caption*|, |\Continued|\-|Float|, das optionale Argument von |\caption|\-|setup|, sowie die Optionen |list=| und |hypcap=| nicht mehr; sie werden entweder ignoriert oder arbeiten nicht erwartungsgemäß.\par Wenn Sie an der ursprünglichen Erweiterung nicht interessiert sind und stattdessen den vollen Umfang des \package{caption}"=Paketes verwenden wollen, können Sie es mit der nicht supporteten(!) Option |compatibility=|\x|false| probieren und die Daumen drücken. (Aber Sie werden die nächste Warnung stattdessen bekommen.) \par\See{\Ref{classes} und \Ref{compatibility}} \Message |Forced redefinition of \caption since the|\\ |unsupported(!) package option `compatibility=false'|\\ |was given.| \Description Da Sie so mutig waren, die Option |compatibility=|\x|false| zu probieren, wird \thispackage\ sein bestes geben, um diesen Wunsch zu erfüllen. Aber je nach verwendeter Dokumentenklasse bzw.~Pakete sollten Sie sich auf Fehlfunktionen oder Fehlermeldungen einstellen. Also bitte die Daumen gedrückt halten! \par\See{\Ref{compatibility}} \Message |Hyperref support is turned off because hyperref has|\\ |stopped early.| \Description Wenn das \package{hyperref}"=Paket vorzeitig seinen Dienst einstellt (den Grund hierfür teilt es Ihnen mit), ist auch die \package{hyperref}"=Unterstützung des \package{caption}"=Paketes nicht verfügbar. Als Folge werden Sie einige Warnungen des \package{hyperref}"=Paketes bekommen, ferner werden Hyperlinks auf Abbildungen und Tabellen nicht funktionsfähig sein. \par\See{\Ref{hyperref}\,} \Message |Ignoring optional argument [|\meta{pos}|] of \setcapwidth.| \Description \Thispackage\ bemüht sich, so gut es kann, die \KOMAScript"=Befehle bzgl.~Tabellen und Abbildungen zu emulieren. Aber das optionale Argument von |\setcapwidth| funktioniert (noch) nicht; wenn Sie es dennoch angeben, wird daher diese Warnung ausgegeben. \par\See{\Ref{KOMA}} \Message |Internal Warning: |\meta{warning message}|.| \Description Diese Warnung sollten Sie niemals sehen; entweder verwenden Sie ein Paket, welches |figure| und/oder |table| in einer dem \package{caption}"=Paket unbekannten Art \& Weise verändert, oder aber es ist ein Fehler im \package{caption}"=Paket. Bitte senden Sie mir einen Fehlerbericht diesbezüglich per E-Mail. Danke! \Message |\label without proper \caption| \Description Anders als bei den meisten nicht gleitenden Umgebungen wird bei den gleitenden Umgebungen die interne Referenz erst bei Anwendung des Befehls |\caption| erzeugt. Ein |\label| Befehl, der auf diese Abbildung bzw.~Tabelle verweisen soll, muß daher entweder direkt \emph{nach} oder innerhalb des Argumentes von |\caption| platziert werden. \Message |Option `|\meta{option}|' was not in list `|\meta{option list}|'.| \Description Wenn Sie versuchen, eine bestimmte Option aus einer Optionsliste zu entfernen, zum Beispiel mit |\clear|\-|caption|\-|setup[po|\-|si|\-|tion]{table}|, und die angegebene Option kann nicht in der Liste gefunden werden, so erhalten Sie die obenstehende Warnung. Liegt dies nicht an einem Schreibfehler Ihrerseits und möchten Sie ferner diese Warnung unterdrücken, so können Sie hierzu |\clear|\-|caption|\-|setup*| anstelle von |\clear|\-|caption|\-|setup| verwenden. \par\See{\Ref{captionsetup}} \Message |Option list `|\meta{option list}|' undefined.| \Description Wenn Sie versuchen, eine bestimmte Option aus einer Optionsliste zu entfernen, zum Beispiel mit |\clear|\-|caption|\-|setup[for|\-|mat]{figure}|, und die angegebene Optionsliste ist (noch) nicht definiert, so erhalten Sie die obenstehende Warnung. Liegt dies nicht an einem Schreibfehler Ihrerseits und möchten Sie ferner diese Warnung unterdrücken, so können Sie hierzu |\clear|\-|caption|\-|setup*| anstelle von |\clear|\-|caption|\-|setup| verwenden. \par\See{\Ref{captionsetup}} \Message |Obsolete option `ignoreLTcapwidth' ignored.| \Description Die Option |ignoreLTcapwidth| des \package{caption2}"=Paketes wird nicht von diesem Paket emuliert. In der Regel können Sie aber diese Option einfach ersatzlos entfernen. \par\See{\Ref{caption2} und \Ref{longtable}} \Message |`ragged2e' support has been changed. Rerun to get|\\ |captions right.| \Description Das \package{ragged2e} wird nur dann vom \package{caption}"=Paket geladen, wenn es tatsächlich benötigt wird. Um dies zu gewährleisten, sind zwei \LaTeX"=Läufe notwendig, daher können Sie beim ersten Durchlauf diese Warnung bekommen. Mit dem nächsten \LaTeX"=Lauf sollte also diese Warnung verschwunden sein. \par\See{\Ref{justification}} \Message |Reference on page |\meta{page no.}| undefined.| \Description Ist ein zweiseitiges Dokumentenlayout gewählt, benötigt \thispackage\ zwei \LaTeX"=Läufe, um die Ränder korrekt zuordnen zu können; daher können Sie beim ersten Durchlauf diese Warnung bekommen. Mit dem nächsten \LaTeX"=Lauf sollte also diese Warnung verschwunden sein. \par\See{\Ref{margins}} \Message |The caption type was already set to `|\meta{type}|'.| \Description Diese Warnung informiert Sie über vermische \package{caption}"=Optionen. Wenn Sie z.B.~|\caption|\-|setup{type=|\x|table}| oder |\caption|\-|of{table}{|\ldots|}| in einer |figure| Umgebung verwenden, werden beide Optionssätze, sowohl derjenige für |figure| (mit |\caption|\-|setup[figure]{|\ldots|}| angegeben) als auch derjenige für |table| (mit |\caption|\-|setup[table]{|\ldots|}| angegeben), angewandt. {\small(Diese Warnung kann bei Bedarf durch Verwendung der Stern-Form |\caption|\-|setup*{type=|\x\ldots|}| unterdrückt werden.)\par} \par\See{\Ref{captionsetup}} \Message |The option `hypcap=true' will be ignored for this|\\ |particular \caption.| \Description \Thispackage\ hat keinen geeigneten Hyperlink"=Anker für diese Beschriftung gefunden, daher hat es entschlossen, die Einstellung |hypcap=|\x|true| (die per Standard gesetzt ist) zu ignorieren. Als Folge werden Hyperlinks zu dieser Abbildung oder Tabelle (etwa über das Abbildungsverzeichnis, oder selber mit |\ref| oder |\auto|\-|ref| angelegt) nicht auf den Beginn der Abbildung oder Tabelle verweisen, sondern stattdessen auf deren Beschriftung.\par Dies kann zum Beispiel passieren, wenn eine Beschriftung mit |\caption|\-|of| innerhalb einer nicht-gleitenden Umgebung gesetzt wird, aber auch, wenn ein Sie ein Paket in Ihrem Dokument verwenden, welches die Umgebungen |figure| oder |table| umdefiniert hat, dieses Paket aber dem \package{caption}"=Paket unbekannt ist.\par Ist dies für Sie ok, aber die Warnung stört Sie, können Sie sie |\caption|\-|setup{hyp|\-|cap=|\x|false}| direkt vor dem betroffenen |\caption| oder |\caption|\-|of| Befehl platzieren. Ist dies hingegen nicht für Sie ok, können Sie selber an geeigneter Stelle mit |\caption|\-|setup{type=|\x\meta{float type}|}| einen Hyperlink"=Anker setzen. \par\See{\Ref{hyperref}\,} \Message |Unsupported document class (or package) detected,|\\ |usage of the caption package is not recommended.| \Description Entweder ist die verwendete Dokumentenklasse dem \package{caption}"=Paket unbekannt, oder aber Sie haben ein Paket in Ihrem Dokument eingebunden, welches ebenfalls das interne Makro |\@make|\-|caption| (welches intern für das Setzen der Abbildungs- und Tabellenbeschriftungen zuständig ist) umdefiniert. Wie-auch-immer, \thispackage\ wird entweder das Design der Beschriftungen in einer ungewollten Art \& Weise verändern, oder aber es wird zu keinem geordneten Verhalten und/oder Fehlermeldungen kommen. Deswegen wird in diesem Falle die Verwendung des \package{caption}"=Paketes nicht empfohlen. \par\See{\Ref{classes} und \Ref{compatibility}} \Message |Unused \captionsetup[|\meta{type}|].| \Description Es wurden Optionen mit |\caption|\-|setup[|\meta{Typ}|]| definiert, die im weiteren Verlauf des Dokumentes aber nicht zur Anwendung gekommen sind. Dies kann zum einen an einem Schreibfehler im Argument \meta{Typ} liegen, aber auch daran, daß ein dem \package{caption}"=Paket unbekanntes Paket die Umgebungen |figure| und/oder |table| umdefiniert hat, oder auch einfach daran, daß Sie die angegebene Umgebung gar nicht im späteren Verlauf Ihres Dokumentes verwenden. (Möchten Sie diese Warnung unterdrücken, so verwenden Sie |\caption|\-|setup*| anstelle von |\caption|\-|setup|.) \par\See{\Ref{captionsetup}} \Message |Usage of the |\meta{package}| package together with the|\\ |caption package is strongly not recommended.|\\ |Instead of loading the |\meta{package}| package you should|\\ |use the caption package option `tableposition=top'.| \Description Das angegebene Paket mischt sich ebenfalls in die Verwendung der Abstände über- und unterhalb der Beschriftungen ein. Viele Köche verderben den Brei, also ist es ratsam, sich für eines der Pakete -- das angegebene oder \thispackage\ -- zu entscheiden, um falsche Abstände zu vermeiden. \par\See{\Ref{skips}} \end{Warnings} \pagebreak[3] \subsection{Fehlermeldungen} \begin{Warnings} \Message |Argument of \@caption has an extra }.| \Or |Paragraph ended before \@caption was complete.| \Description Beim Setzen von Beschriftungen, die etwas spezielles wie z.B.~eine Tabelle enthalten, ist zu beachten, daß immer ein alternativer Listeneintrag als optionales Argument bei |\caption| bzw. |\caption|\-|of| mit angegeben werden muß, auch wenn Ihr Dokument gar kein Abbildungs- oder Tabellenverzeichnis beeinhaltet. \par\See{\Ref{caption}, \Ref{lists} und \Ref{hyperref}\,} \Message |\caption outside float.| \Description |\caption| ist (in der Regel) nur für die Anwendung in gleitenden Umgebungen wie |figure| oder |table|, oder für die Anwendung innerhalb |long|\-|table| oder |wrap|\-|figure| konzipiert, ansonsten bekommen Sie obenstehende Fehlermeldung. Um eine Beschriftung innerhalb einer anderen Umgebung zu setzen, verwenden Sie bitte entweder die Kombination |\caption|\-|setup{type=|\x\meta{type}|}| $+$ |\caption|, oder aber |\caption|\-|of|. \par\See{\Ref{caption}} \Message |\ContinuedFloat outside float.| \Description |\Continued|\-|Float| ist nur für die Anwendung innerhalb einer gleitenden Umgebung wie |figure| oder |table| konzipiert. %oder auch |long|\-|table| Für die Anwendung in einer Box, Gruppe oder nicht-gleitenden Umgebung bietet sich die Kombination |\caption|\-|setup{type=|\x\meta{type}|}| $+$ |\Continued|\-|Float| an.\par |\Continued|\-|Float| innerhalb einer |long|\-|table| ist nicht möglich, aber vielleicht ist die |longtable*| Umgebung, die eine longtable ohne Erhöhung des Tabellenzählers setzt, für Sie hilfreich. \par\See{\Ref{ContinuedFloat} und \Ref{longtable}} \Message |Continued `|\meta{type}|' after `|\meta{type}|'.| \Description Fortlaufende Abbildungen oder Tabellen dürfen nicht von anderen gleitenden Umgebungen (oder einer |long|\-|table|) unterbrochen werden, so ist z.B.~ eine Tabelle zwischen einer Abbildung und einer (mit |\Continued|\-|Float|) fortgesetzten Abbildung nicht möglich. \par\See{\Ref{ContinuedFloat}} \Message |For a successful cooperation we need at least version|\\ |`|\meta{date}|' of package |\meta{package}|, but only version|\\ |`|\meta{old-date}|' is available.| \Description Das aktuelle \package{caption}"=Paket kann nicht mit einem solch veralteten Paket zusammen betrieben werden. Bitte aktualisieren Sie das betroffene Paket, zumindest auf die angegebene Version. \Message |Internal Error: |\meta{error message}|.| \Description Diesen Fehler sollten Sie niemals sehen. Wenn doch, senden Sie mir bitte einen Fehlerbericht per E-Mail. \Message |No float type '|\meta{type}|' defined.| \Description Der in |\caption|\-|setup{type=|\x\meta{type}|}|, |\caption|\-|of|\marg{type}, oder |\Declare|\-|Caption|\-|Sub|\-|Type| angegebene \meta{type} ist unbekannt. \meta{type} sollte entweder `\texttt{figure}' oder `\texttt{table}', oder aber eine mit mit |\Declare|\-|Floating|\-|Environment| (vom \package{newfloat}"=Paket bereitgestellt), |\new|\-|float| (vom \package{float}"=Paket\cite{float} bereitgestellt) oder |\Declare|\-|NewFloat|\-|Type| (vom \package{floatrow}"=Paket\cite{floatrow} bereitgestellt) definierte Gleitumgebung sein. \Message |Not allowed in longtable* environment.| \Description Der Befehl |\caption| ist innerhalb einer |long|\-|table*| Umgebung nicht erlaubt. Verwenden Sie entweder |\caption*| für eine Beschriftung ohne Bezeichner oder benutzen Sie die reguläre |long|\-|table| Umgebung. \Message |Not available in compatibility mode.| \Description Das angeforderte Feature steht im sog.~Kompatibilitätsmodus nicht zur Verfügung, d.h.~\thispackage\ hat eine inkompatible Dokumentenklasse oder ein inkompatibles Paket entdeckt, welches ebenfalls |\caption| erweitert und damit die Anwendung dieses Features bzw.~Befehls verhindert. \par\See{\Ref{compatibility}} \Message |Only one \caption can be placed in this environment.| \Description Innerhalb der Umgebungen, die das \package{fltpage} oder \package{sidecap} Paket zur Verfügung stellt, kann nur eine einzige Bildbeschriftung gesetzt werden. \Message |Option clash for package caption.| \Or[aber manchmal auch] |Missing \begin{document}.| \Description Ein anderes \LaTeX-Paket hat \thispackage\ bereits geladen, Sie können es daher nicht noch einmal mit anderen Optionen laden. Als Verdächtiger kommt z.B.~das \package{ctable} oder das \package{subfig}"=Paket in Frage; sollte dies zutreffen, laden Sie bitte \thispackage\ \emph{vor} dem betreffenen Paket. Im Falle des \package{subfig}"=Paketes können Sie auch alternativ beim Laden des \package{subfig}"=Paketes die Option |caption=|\x|false| angeben. \par\See{Dokumentation des \package{subfig}"=Paketes\cite{subfig}} \Message |Paragraph ended before \caption@makecurrent was complete.| \Or |Paragraph ended before \caption@prepareanchor was complete.| \Description Beim Setzen von Beschriftungen, die mehr als aus einem Absatz bestehen, ist zu beachten, daß immer ein alternativer Listeneintrag als optionales Argument bei |\caption| bzw. |\caption|\-|of| mit angegeben werden muß, auch wenn Ihr Dokument gar kein Abbildungs- oder Tabellenverzeichnis beeinhaltet. \par\See{\Ref{caption}, \Ref{lists} und \Ref{hyperref}\,} \Message |Something's wrong--perhaps a missing \caption|\\ |in the last figure or table.| \Description Sie scheinen den Befehl |\sub|\-|caption| (oder einen anderen, der eine Unter"=Beschriftung setzt) ohne eine zugehörige, mit |\caption| gesetzte, Beschriftung anzuwenden. Dies wird nicht unterstützt. \Message |The option `labelsep=|\meta{name}|' does not work|\\ |with `format=hang'.| \Or |The option `labelsep=|\meta{name}|' does not work|\\ |with \setcaphanging (which is set by default).| \Description Ein Bezeichnungstrenner, der ein |\\| Kommando enthält (wie etwa |labelsep=|\x|newline|), kann nicht mit einem Format kombiniert werden, welches "`hängende"' Beschriftungen liefert (wie etwa |format=|\x|hang|). Bitte wählen Sie entweder einen anderen Trenner (wie z.B.~|labelsep=|\x|colon|), oder aber ein anderes Beschriftungsformat (wie z.B.~|format=|\x|plain|) aus. \par\See{\Ref{formats} bzw.~\Ref{KOMA}} \Message |The package option `caption=false' is obsolete.|\\ |Please pass this option to the subfig package instead|\\ |and do *not* load the caption package anymore.| \Description Sie haben die Option |caption=|\x|false| angegeben. Diese war früher mal eine Krücke, um nicht das komplette \package{caption}"=Paket zu laden, sondern nur den für das \package{subfig}"=Paket zwingend benötigten Teil. Dieser Mechanismus ist veraltet und wird nicht mehr angeboten; stattdessen sollten Sie diese Option dem \package{subfig}"=Paket übergeben und \thispackage\ nicht mehr explizit laden. \par\See{Dokumentation des \package{subfig}"=Paketes\cite{subfig}} \Message |Undefined boolean value `|\meta{value}|'.| \Description Es wurde versucht, eine boolische Option (wie z.B.~|singlelinecheck=| oder |hypcap=|) auf einen unbekannten Wert zu setzen. Nur die Werte |false|, |no|, |off|, |0| bzw.~|true|, |yes|, |on| und |1| sind hier möglich. \Message |Undefined format `|\meta{name}|'.| \Description Es wurde versucht, ein Beschriftungsformat auszuwählen, welches nicht definiert ist. Vielleicht ein Schreibfehler!? \par\See{\Ref{formats}} \Message |Undefined label format `|\meta{name}|'.| \Description Es wurde versucht, ein Bezeichnungsformat auszuwählen, welches nicht definiert ist. Vielleicht ein Schreibfehler!? \par\See{\Ref{formats}} \Message |Undefined label separator `|\meta{name}|'.| \Description Es wurde versucht, ein Beschriftungstrenner auszuwählen, welcher nicht definiert ist. Vielleicht ein Schreibfehler!? \par\See{\Ref{formats}} \Message |Undefined list format `|\meta{name}|'.| \Description Es wurde versucht, ein Listenformat auszuwählen, welches nicht definiert ist. Vielleicht ein Schreibfehler!? \par\See{\Ref{lists}} \Message |Undefined position `|\meta{name}|'.| \Description Es wurde versucht, den Positionshinweis auf einen unbekannten Wert zu setzen. Vielleicht ein Schreibfehler!? \par\See{\Ref{skips}} \Message |Undefined style `|\meta{name}|'.| \Description Es wurde versucht, ein Beschriftungsstil auszuwählen, welcher nicht definiert ist. Vielleicht ein Schreibfehler!? \par\See{\Ref{style}} \Message |Undefined text format `|\meta{name}|'.| \Description Es wurde versucht, ein Textformat auszuwählen, welches nicht definiert ist. Vielleicht ein Schreibfehler!? \par\See{\Ref{formats}} \Message |Usage of the `position' option is incompatible|\\ |to the `|\meta{package}|' package.| \Description % (ftcap,nonfloat,topcapt) Das angegebene Paket mischt sich ebenfalls in die Verwendung der Abstände über- und unterhalb der Beschriftungen ein. Sie müssen sich daher für \emph{einen} der Mechanismen entscheiden: Entweder Sie verwenden das angegebene Paket für die Anpassung der Abstände, oder aber die |position|"=Option des \package{caption}"=Paketes, beides geht nicht. \par\See{\Ref{skips}} \Message |You can't use both, the (obsolete) caption2 *and*|\\ |the (current) caption package.| \Description Die Pakete \package{caption} und \package{caption2} können nicht innerhalb eines Dokumentes gleichzeitig verwendet werden. Verwenden Sie bitte nur das aktuelle \package{caption}"=Paket. \par\See{\Ref{caption2}} \end{Warnings} % --------------------------------------------------------------------------- % \clearpage \section{Versionshistorie} \label{history} Die Version $1.0$ dieses Paketes wurde im Jahr 1994 veröffentlicht und bot eine Handvoll Optionen, um das Design der Abbildungs- bzw.~Tabellenbeschriftungen anzupassen. Ferner unterstützte diese Version bereits das \package{rotating} und \package{subfigure}"=Paket. Version $1.1$ führte die |center|\-|last| Option ein; in Version $1.2$ kam die Unterstützung des \package{float}"=Paketes hinzu. Die Version $1.3$ verfeinerte die Koorperation mit dem \package{subfigure}"=Paket; die Version $1.4$ bot die Option |nooneline| als Neuheit an. Die Version $2.0$ des sog.~\package{caption2}"=Paketes war ein experimenteller Seitenzweig der regulären Version des \package{caption}"=Paketes. Er wurde im Jahre 1995 als Beta"=Testversion öffentlich gemacht, um die Nachfrage nach neuen Features und der Anpassung an das \package{longtable}"=Paket kurzfristig zu befriedigen. (Eine Version $2.1$ wurde 2002 als Fehlerbereinigung nachgereicht.) Im Jahr 2003 hatte ich dann endlich wieder etwas Zeit gefunden, und so wurde im Dezember die neue reguläre Version $3.0$ in Zusammenarbeit mit Frank Mittelbach und Steven Cochran aus der Taufe gehoben, die endlich den arg vernachlässigten Seitenzweig namens \package{caption2} überflüssig machte. Weite Teile des Paketes wurden hierfür neu geschrieben, und auch das Benutzerinterface wurde gründlich renoviert. Außerdem kam die Unterstützung der Pakete \package{hyperref}, \package{hypcap}, \package{listings}, \package{sidecap} und \package{supertabular} hinzu. Während all die vorangegangenen Versionen dafür ausgelegt waren, mit den \LaTeX"=Standarddokumentenklassen \class{article}, \class{report} und \class{book} benutzt zu werden, unterstützt die im Jahre 2007 veröffentlichte Version $3.1$ auch die \AmS, die \KOMAScript, \NTG{} und \SmF{} Dokumentenklassen, ferner auch die \class{beamer}"=Klasse. Weiterhin kamen die Unterstützung der französischen Babel"=Option \package{frenchb} und des französischen Sprachpaketes \package{frenchle} bzw.~\package{frenchpro} hinzu; außerdem wurde die Anzahl der unterstützten Pakete um die Pakete \package{floatflt}, \package{fltpage}, \package{picinpar}, \package{picins}, \package{setspace}, \package{threeparttable} und \package{wrapfig} erhöht. Neue Optionen und Befehle wurden ebenfalls eingeführt, unter anderem |font+|, |figure|\-|within| \& |table|\-|within|, |list| \& |list|\-|format|, |max|\-|margin| \& |min|\-|margin|, |\caption|\-|list|\-|entry|, |\Declare|\-|Caption|\-|List|\-|Format|. Einen weiteren Gewinn stellt der neu integrierte Kompatibilitätscheck \see*{\Ref{compatibility}}, das neue "`hypcap"' Feature \see*{\Ref{hyperref}\,}, und die Unterstützung von Teil"=Beschriftungen \see*{\package{subcaption}"=Paketdokumentation} dar. % --------------------------------------------------------------------------- % \clearpage \section{Kompatibilität zu älteren Versionen} \subsection{caption v\texorpdfstring{$1.x$}{1.x}} \label{caption1} Diese Version des \package{caption}"=Paketes ist weitgehend kompatibel zu den älteren Versionen $1.0$ bis $1.4$ des Paketes; alte, vorhandene Dokumente sollten sich also in der Regel ohne Probleme weiterhin übersetzen lassen. Jedoch ist zu beachten, daß eine Mischung aus alten Befehlen und neueren Optionen bzw.~Befehlen zu unerwünschten Nebeneffekten führen kann. Hier eine kurze Übersicht über die alten, überholten Optionen und ihre aktuellen Entsprechungen: \begin{center}\small \begin{tabular}{ll} \package{caption} \version{1.x} & \package{caption} \version{3.x}\\ \hline %\endhead |normal| & |format=plain|\\ |hang| & |format=hang|\\ |isu| & |format=hang|\\ |center| & |justification=centering|\\ |centerlast| & |justification=centerlast|\\ |nooneline| & |singlelinecheck=off|\\ |scriptsize| & |font=scriptsize|\\ |footnotesize| & |font=footnotesize|\\ |small| & |font=small|\\ |normalsize| & |font=normalsize|\\ |large| & |font=large|\\ |Large| & |font=Large|\\ |up| & |labelfont=up|\\ |it| & |labelfont=it|\\ |sl| & |labelfont=sl|\\ |sc| & |labelfont=sc|\\ |md| & |labelfont=md|\\ |bf| & |labelfont=bf|\\ |rm| & |labelfont=rm|\\ |sf| & |labelfont=sf|\\ |tt| & |labelfont=tt|\\ \end{tabular} \end{center} Neben den Optionen zum Einstellen des Zeichensatzes gab es auch die Befehle |\caption|\-|size| bzw.~|\caption|\-|font| und |\caption|\-|label|\-|font|, die direkt mit |\re|\-|new|\-|command| umdefiniert werden konnten. Dieser Mechanismus wurde durch die Anweisungen \begin{quote} |\DeclareCaptionFont{|\ldots|}{|\ldots|}|\qquad und\\ |\captionsetup{font=|\ldots|,labelfont=|\ldots|}| \end{quote} ersetzt. \SeeUserDefined Das Setzen eines Randes geschah in \version{1.x} mit \begin{quote} |\setlength{\captionmargin}{|\ldots|}|\quad. \end{quote} Dies wurde durch \begin{quote} |\captionsetup{margin=|\ldots|}| \end{quote} ersetzt. \See{\Ref{margins}} Zum Beispiel wäre \begin{quote} |\usepackage[hang,bf]{caption}|\\ |\renewcommand\captionfont{\small\sffamily}|\\ |\setlength\captionmargin{10pt}| \end{quote} in aktueller Notation \begin{quote} |\usepackage[format=hang,labelfont=bf,font={small,sf},|\\ | margin=10pt]{caption}| \end{quote} bzw. \begin{quote} |\usepackage{caption}|\\ |\captionsetup{format=hang,labelfont=bf,font={small,sf},|\\ | margin=10pt}|\quad. \end{quote} Die etwas exotische Option |ruled|, die eine partielle Anwendung der eingestellten Parameter bei Umgebungen des Typs |ruled| aktivierte, wird ebenfalls emuliert, hat aber keine direkte Entsprechung in dieser Version des \package{caption}"=Paketes. Möchte man das Aussehen der Abbildungen des Stils |ruled|, der durch das \package{float}"=Paket zur Verfügung gestellt wird, verändern, so ist dies nun durch \begin{quote} |\DeclareCaptionStyle{ruled}{|\ldots|}| \end{quote} bzw. \begin{quote} |\captionsetup[ruled]{|\ldots|}| \end{quote} möglich. \SeeUserDefined[, \Ref{captionsetup} und \Ref{float}] \subsection{caption2 v\texorpdfstring{$2.x$}{2.x}} \label{caption2} Das Paket \package{caption} und seine experimentelle, nun veraltete Variante \package{caption2} sind vom internen Konzept her zu unterschiedlich, um hier eine vollständige Kompatibilität gewährleisten zu können. Daher liegt diesem Paket weiterhin die Datei |caption2.sty| bei, so daß ältere Dokumente, die das \package{caption2}"=Paket verwenden, weiterhin übersetzt werden können. Neue Dokumente sollten jedoch auf dem aktuellen \package{caption}"=Paket aufgesetzt werden. In den meisten Fällen ist es hierfür ausreichend, einfach die Anweisung \begin{quote} |\usepackage[...]{caption2}| \end{quote} durch \begin{quote} |\usepackage[...]{caption}| \end{quote} zu ersetzen. Einige Optionen und Befehle werden jedoch nicht emuliert, so daß Sie anschließend Fehlermeldungen erhalten können. Die folgenden Absätze werden Ihnen jedoch bei der Umsetzung dieser Optionen und Befehle helfen. Sollten darüberhinaus noch Fragen offen sein oder Probleme auftreten, dann zögern Sie bitte nicht, mich diesbezüglich per E-Mail zu kontaktieren. Zusätzlich zu den bereits im letzten Abschnitt vorgestellten Optionen werden ebenfalls emuliert: \begin{center}\small \begin{tabular}{ll} \package{caption2} \version{2.x} & \package{caption} \version{3.x}\\ \hline %\endhead |flushleft| & |justification=raggedright|\\ |flushright| & |justification=raggedleft|\\ |oneline| & |singlelinecheck=on|\\ \end{tabular} \end{center} Das Setzen eines Randes geschah in \version{2.x} mit \begin{quote}\leavevmode\hbox{% |\setcaptionmargin{|\ldots|}| bzw. |\setcaptionwidth{|\ldots|}|\quad. }\end{quote} Dies wurde durch \begin{quote}\leavevmode\hbox{% |\captionsetup{margin=|\ldots|}| bzw. |\captionsetup{width=|\ldots|}| }\end{quote} ersetzt. \See{\Ref{margins}} Das Setzen des Einzuges wurde in \version{2.x} mit \begin{quote} |\captionstyle{indent}|\\ |\setlength\captionindent{|\ldots|}| \end{quote} \pagebreak[3] erledigt, dies geschieht nun stattdessen mit \nopagebreak[3] \begin{quote} |\captionsetup{format=plain,indention=|\ldots|}|\quad. \end{quote} Die Sonderbehandlung von einzeiligen Beschriftungen ließ sich in \version{2.x} mit |\oneline|\-|captions|\-|false| aus- bzw.~|\oneline|\-|captions|\-|true| wieder einschalten. Dies wurde durch |\caption|\-|setup{|\x|single|\-|line|\-|check=|\x|off}| bzw. |\caption|\-|setup{|\x|single|\-|line|\-|check=|\x|on}| ersetzt. \See{\Ref{justification}} Die Befehle \begin{quote} |\captionlabeldelim|, |\captionlabelsep|, |\captionstyle|,\\ |\defcaptionstyle|, |\newcaptionstyle| und |\renewcaptionstyle| \end{quote} haben keine direkte Entsprechnung und werden daher durch diese Version des \package{caption}"=Paketes auch nicht emuliert. Sie führen also bei der Verwendung zu Fehlermeldungen und müssen daher zwingend umgesetzt werden. Die Umsetzung ist von Fall zu Fall verschieden, lesen Sie sich daher bitte diese Anleitung gründlich durch und suchen Sie sich die Optionen bzw.~Befehle als Ersatz heraus, die Ihren Bedürfnissen entsprechen. \iffalse Als kleine Hilfestellung hier die Beispiele aus der alten Anleitung zum \package{caption2}"=Paket und deren Umsetzung: \newenvironment{OldNew}% {\begin{minipage}\linewidth \def\Old{Alt:\begin{quote}}% \def\New{\end{quote}Neu:\begin{quote}}% \def\Or{\end{quote}\centerline{-- oder --}\begin{quote}}% }% {\end{quote}\end{minipage}} \begin{OldNew} \Old |\captionstyle{center}| \New |\captionsetup{justification=centering}| \end{OldNew} \hrule \begin{OldNew} \Old |\captionstyle{indent}|\\ |\setlength{\captionindent}{1cm}| \New |\captionsetup{format=plain,indention=1cm}| \end{OldNew} \hrule \begin{OldNew} \Old |\renewcommand\captionfont{\small}|\\ |\renewcommand\captionlabelfont{\itshape}| \New |\captionsetup{font=small,labelfont=it}| \end{OldNew} \hrule \begin{OldNew} \Old |\renewcommand\captionfont{\small\itshape}|\\ |\renewcommand\captionlabelfont{\upshape}| \New |\captionsetup{font=small,textfont=it}| \end{OldNew} \hrule \begin{OldNew} \Old |\setcaptionwidth{.5\textwidth}| \New |\captionsetup{width=.5\textwidth}| \end{OldNew} \hrule \begin{OldNew} \Old |\setcaptionmargin{.25\textwidth}| \New |\captionsetup{margin=.25\textwidth}| \end{OldNew} \hrule \begin{OldNew} \Old |\newcaptionstyle{absatz}{\captionlabel: \exampletext\par}|\\ |\captionstyle{absatz}| \New |\DeclareCaptionFormat{absatz}{#1: #3\par}|\\ |\captionsetup{format=absatz,singlelinecheck=off}| \Or |\captionsetup{format=plain,singlelinecheck=off}| \end{OldNew} \hrule \begin{OldNew} \Old |\newcaptionstyle{fancy}{\textsf{\captionlabel}\\\exampletext\par}|\\ |\captionstyle{fancy}| \New |\DeclareCaptionFormat{fancy}{\textsf{#1}\\#3\par}|\\ |\captionsetup{format=fancy,singlelinecheck=off}| \Or |\captionsetup{format=plain,labelfont=sf,labelsep=newline}| \end{OldNew} \hrule \begin{OldNew} \Old |\newcaptionstyle{fancy2}{\exampletext\hfill\textit{(\captionlabel)}}|\\ |\captionstyle{fancy2}| \New |\DeclareCaptionFormat{fancy2}{#3\hfill\textit{(#1)}}|\\ |\captionsetup{format=fancy2,singlelinecheck=off}| \end{OldNew} \hrule \begin{OldNew} \Old |\newcaptionstyle{mystyle}{%|\\ | \normalcaptionparams|\\ | \renewcommand\captionlabelfont{\bfseries}%|\\ | \renewcommand\captionlabeldelim{.}%|\\ | \onelinecaptionsfalse|\\ | \usecaptionstyle{centerlast}}|\\ |\captionstyle{mystyle}| \New |\DeclareCaptionStyle{mystyle}{labelfont=bf,labelsep=period,justification=centerlast}|\\ |\captionsetup{style=mystyle}| \end{OldNew} \hrule \begin{OldNew} \Old |\newcaptionstyle{hangandleft}{%|\\ | \let\oldcaptiontext\exampletext|\\ | \def\exampletext{\raggedright\oldcaptiontext}%|\\ | \usecaptionstyle{hang}}|\\ |\captionstyle{hangandleft}| \New |\captionsetup{format=hang,justification=raggedright}| \end{OldNew} \hrule \begin{OldNew} \Old |\newcaptionstyle{fancy}{%|\\ | \usecaptionmargin\captionfont|\\ | \onelinecaption|\\ | {{\captionlabelfont\captionlabel\captionlabeldelim}%|\\ | \captionlabelsep\exampletext}%|\\ | {{\centering\captionlabelfont\captionlabel\par}%|\\ | \centerlast\exampletext\par}}|\\ |\captionstyle{fancy}| \New |\DeclareCaptionFormat{fancy}{\centering#1\par\centerlast#3\par}|\\ |\DeclareCaptionStyle{fancy}|\\ | [format=plain,justification=centering]|\\ | {format=fancy}|\\ |\captionsetup{style=fancy}| \Or |\DeclareCaptionFormat{fancy}{#1\par#3\par}|\\ |\DeclareCaptionStyle{fancy}|\\ | [format=plain,justification=centering]|\\ | {format=fancy,justification=centerlast}|\\ |\captionsetup{style=fancy}| \end{OldNew} \hrule \begin{OldNew} \Old |\renewcaptionstyle{longtable}{\usecaptionstyle{normal}}| \New |\captionsetup[longtable]{format=plain}| \end{OldNew} \fi Ebenfalls keine Entsprechung hat die Option |ignore|\-|LT|\-|cap|\-|width| der \version{2.x}. Deren Verwendung kann in der Regel einfach entfallen, da \thispackage\ den Wert von |\LT|\-|cap|\-|width| sowieso nicht beachtet, solange er nicht explizit auf einen anderen Wert als den Standardwert ($=$|4in|) gesetzt wird. \See{\Ref{longtable}} \subsection{caption v\texorpdfstring{$3.0$}{3.0}} \label{caption3} %\NEWdescription{v3.1} \Thispackage\ \version{3.0} hatte keine weiteren Dokumentenklassen unterstützt als die drei Standard"=Klassen, die \LaTeX\ selber mitbringt: \class{article}, \class{report} und \class{book}. Daher waren die Vorbelegungen der Einstellungsmöglichkeiten fest durch dieses Paket vorgegeben, sie repräsentierten das Aussehen bei Verwendung einer dieser Klassen. Nun aber unterstützt \thispackage\ mehr Dokumentenklassen aktiv, folglich kann die Vorbelegung nun von der verwendeten Dokumentenklasse abhängen. Ein Beispiel: Während in \version{3.0} die Vorbelegung der Ausrichtung immer |jus|\-|ti|\-|fi|\-|ca|\-|tion=|\x|jus|\-|ti|\-|fied| war, ist sie nun immer noch |jus|\-|ti|\-|fied| wenn eine der drei Standardklassen verwendet wird, aber |jus|\-|ti|\-|fi|\-|ca|\-|tion=|\x|ragged|\-|right|, wenn die \package{beamer}"=Klasse verwendet wird. Möchten Sie weiterhin die "`alten"' Vorbelegungen, so können Sie die Option |style=base| beim Laden des \package{caption}"=Paketes angeben oder später mit |\caption|\-|setup{style=|\x|base}| den alten Grundzustand wieder herstellen. \medskip Weiterhin prüft das \package{caption}"=Paket nun automatisch auf Inkompatibilitäten und gibt ggf.~eine Warnung aus. Sollte eine ernsthafte Inkompatibilität festgestellt werden, werden außerdem einige Features des \package{caption}"=Paketes abgeschaltet. Lediglich diese Prüfung ist neu, wenn Sie also neuerdings eine Kompatibilitätswarnung erhalten, so waren auch bereits vorangegangene Versionen des \package{caption}"=Paketes inkompatibel, dies hatte sich aber früher "`nur"' durch Seiteneffekte bzw.~nicht korrekt funktionierende Optionen oder Befehle geäußert. Die Kompatibilitätswarnungen sagen auch nicht aus, daß etwas schief gegangen ist, sondern lediglich, daß etwas schief gehen könnte. Sie sollten aber auf jeden Fall, wenn Sie \thispackage\ trotz einer solchen Warnung einsetzen, die Abbildungs- und Tabellenbeschriftungen bzgl.~ihres Aussehens genau im Auge behalten. \bigskip \begin{Note*} \Thispackage\ \version{3.0} hatte als Interimslösung die Option |caption=|\x|false| bereitgestellt, um nicht das ganze \package{caption}"=Paket zu laden, sondern nur denjenigen Teil, der für den Betrieb des \package{subfig}"=Paketes\cite{subfig} notwendig war. Dieser Mechanismus ist veraltet und wird nicht mehr angeboten; bitte übergeben Sie stattdessen bei Bedarf diese Option an das \package{subfig}"=Paket und laden Sie nicht mehr \thispackage. %\par\See{\package{subfig}"=Paketdokumentation} \end{Note*} % --------------------------------------------------------------------------- % \iffalse \TODO: subcaption-Anleitung \fi % --------------------------------------------------------------------------- % \clearpage \begin{thebibliography}{99} \bibitem{TLC2} Frank Mittelbach und Michel Goossens:\\ \newblock {\em Der {\LaTeX} Begleiter (2.\,Auflage)},\\ \newblock Addison-Wesley, 2004. \bibitem{beamer} Till Tantau:\\ \href{http://www.ctan.org/pkg/beamer}% {\emph{User Guide to the Beamer Class, Version 3.07}},\\ March 11, 2007 \bibitem{KOMAScript} Markus Kohm \& Jens-Uwe-Morawski:\\ \href{http://www.ctan.org/pkg/koma-script}% {\emph{KOMA-Script -- ein wandelbares \LaTeXe-Paket}},\\ 2007-03-02 \bibitem{NTG} Victor Eijkhout:\\ \href{http://www.ctan.org/pkg/ntgclass}% {\emph{An introduction to the Dutch \LaTeX\ document classes}},\\ 3 September 1989 \bibitem{algorithms} Rog\'erio Brito:\\ \href{http://www.ctan.org/pkg/algorithms}% {\emph{Algorithms}},\\ June 2, 2006 \iffalse \bibitem{algorithm2e} Christophe Fiorio:\\ \href{http://www.ctan.org/pkg/algorithm2e}% {\emph{algorithm2e.sty -- package for algorithms}},\\ March 11, 2007 \fi \bibitem{float} Anselm Lingnau:\\ \href{http://www.ctan.org/pkg/float}% {\emph{An Improved Environment for Floats}},\\ 2001/11/08 \bibitem{floatflt} Mats Dahlgren:\\ \href{http://www.ctan.org/pkg/floatflt}% {\emph{Welcome to the floatflt package}},\\ 1998/06/05 \bibitem{floatrow} Olga Lapko:\\ \href{http://www.ctan.org/pkg/floatrow}% {\emph{The floatrow package documentation}},\\ 2007/12/24 \bibitem{fltpage} Sebastian Gross:\\ \href{http://www.ctan.org/pkg/fltpage}% {\emph{Welcome to the beta test of fltpage package!}},\\ 1998/11/13 \bibitem{hyperref} Sebastian Rahtz \& Heiko Oberdiek:\\ \href{http://www.ctan.org/pkg/hyperref}% {\emph{Hypertext marks in \LaTeX}},\\ November 12, 2007 \bibitem{hypcap} Heiko Oberdiek:\\ \href{http://www.ctan.org/pkg/hypcap}% {\emph{The hypcap package -- Adjusting anchors of captions}},\\ 2007/04/09 \bibitem{listings} Carsten Heinz \& Brooks Moses:\\ \href{http://www.ctan.org/pkg/listings}% {\emph{The Listings Package}},\\ 2007/02/22 \bibitem{longtable} David Carlisle:\\ \href{http://www.ctan.org/pkg/longtable}% {\emph{The longtable package}},\\ 2004/02/01 \bibitem{picinpar} Friedhelm Sowa:\\ \href{http://www.ctan.org/pkg/picinpar}% {\emph{Pictures in Paragraphs}},\\ July 13, 1993 \bibitem{picins} Joachim Bleser und Edmund Lang:\\ \href{http://www.ctan.org/pkg/picins}% {\emph{PicIns-Benutzerhandbuch Version 3.0}},\\ September~1992 \bibitem{rotating} Sebastian Rahtz und Leonor Barroca:\\ \href{http://www.ctan.org/pkg/rotating}% {\emph{A style option for rotated objects in \LaTeX}},\\ 1997/09/26 \bibitem{setspace} Erica M. S. Harris \& Geoffrey Tobin:\\ \href{http://www.ctan.org/pkg/setspace}% {\emph{LaTeX Document Package ``setspace''}},\\ 1 December 2000 \bibitem{sidecap} Rolf Niepraschk \& Hubert G\"a\ss lein:\\ \href{http://www.ctan.org/pkg/sidecap}% {\emph{The sidecap package}},\\ 2003/06/06 \bibitem{subfigure} Steven D. Cochran:\\ \href{http://www.ctan.org/pkg/subfigure}% {\emph{The subfigure package}},\\ 2002/07/02 \bibitem{subfig} Steven D. Cochran:\\ \href{http://www.ctan.org/pkg/subfig}% {\emph{The subfig package}},\\ 2005/07/05 \bibitem{supertabular} Johannes Braams und Theo Jurriens:\\ \href{http://www.ctan.org/pkg/supertabular}% {\emph{The supertabular environment}},\\ 2002/07/19 \bibitem{threeparttable} Donald Arseneau:\\ \href{http://www.ctan.org/pkg/threeparttable}% {\emph{Three part tables: title, tabular environment, notes}},\\ 2003/06/13 \bibitem{wrapfig} Donald Arseneau:\\ \href{http://www.ctan.org/pkg/wrapfig}% {\emph{WRAPFIG.STY ver 3.6}},\\ 2003/01/31 \bibitem{xtab} Peter Wilson:\\ \href{http://www.ctan.org/pkg/xtab}% {\emph{The xtab package}},\\ 2004/05/24 \end{thebibliography} % --------------------------------------------------------------------------- % \end{document}