PDA

View Full Version : Bildunterschrift von Abbildung trennen?



zarathustra79
26-07-2007, 23:43
Hallo,

ich schreibe meine Diplomarbeit mit LATEX und habe eine Abbildung, die eine ganze Seite einnimmt. Die Bildunterschrift ist nochmal eine halbe Seite lang, und wird jetzt nicht angezeigt.

\begin{figure}
\centering
\includegraphics[width=\textwidth]{images/lozenges.jpg}
\caption{Ultramylonitic shear zones in the field:\\
blabla...}\
\label{fig:2}
\end{figure}

Wäre toll, wenn mir jemand sagen könnte, was ich machen muss, um die Bildunterschrift auf die nächste Seite zu bekommen. Habe es schon mit \captionof versucht, aber es hat nicht geholfen (oder ich habe was falsch gemacht, was gut sein kann).

Vielen Dank!

sommerfee
27-07-2007, 08:23
Das fltpage-Paket bietet genau dafür eine automatisierte Lösung an.

Liebe Grüße,
Axel

zarathustra79
27-07-2007, 13:29
Vielen Dank erstmal. Mit floatfigure und fltpage funktioniert es. Aber die Abbildung wird nicht wie die figures nummeriert und die caption steht einfach so auf der nächsten Seite, ohne Verweis auf die dazugehörige Abbildung (fig. 3.2). Ich bin ein totaler Anfänger mit Latex und etwas hilflos. Was muss ich denn machen, damit auch die floatfigures als figures gekennzeichnet werden?

sommerfee
27-07-2007, 15:48
Was muss ich denn machen, damit auch die floatfigures als figures gekennzeichnet werden?

Normalerweise werden sie das, hast du einen kleinen (lauffähigen) Beispielquelltext für uns, der zeigt was du genau gemacht hast und anhand dessen wir den Fehler nachstellen können?

Liebe Grüße,
Axel

zarathustra79
27-07-2007, 17:20
Hallo,
also so sehen meine Präambel und das eigentliche Dokument aus. Habe schon einiges auf gut Glück ausprobiert, aber ich bekomme das mit der Nummerierung nicht hin. Vielen Dank für die Hilfe!
Lieben Gruß, Sarah

\normalsize \documentclass[12pt,a4paper,twoside]{article}
...
\usepackage{graphicx}
\usepackage{float}
...
\makeatletter \@addtoreset{figure}{section}
\renewcommand{\thefigure}{\thesection.\arabic{figu re}}
\@addtoreset{table}{section}
\renewcommand{\thetable}{\thesection.\arabic{table }}
\makeatother

\setcounter{secnumdepth}{3}
\setcounter{tocdepth}{4}
...
\begin{document}
\initfloatingfigs
...
\section{...}
...
\clearpage
\begin{floatingfigure}
\centering
\includegraphics[width=\textwidth]{images/lozenges.jpg}
\caption{Ultramylonitic shear zones in the field:\\
\small blabla...}\normalsize
\label{fig:2}
\end{floatingfigure}
...
\end{document}

sommerfee
27-07-2007, 18:51
Ich denke das Hauptproblem dürfte vermutlich hier liegen:

http://www.ctan.org/tex-archive/help/Catalogue/entries/floatfig.html

Zitat: "The package floatfig was a style option for LaTeX 2.09. It has been extended somewhat for LaTeX2e and renamed floatflt. Floatfig does not itself work under current LaTeX."

Liebe Grüße,
Axel

zarathustra79
27-07-2007, 23:33
Nochmal Danke für das tapfere Antworten auf meine Fragen. Aber ich bekomme das Problem nicht in den Griff.

Sobald ich \usepackage{floatftl} einfüge, wird mir die Abbildung nicht angezeigt. Das scheint also nicht zu funktionieren. Weiss nicht wieso.

Mit \usepackage{float} und der Abbildung wie untenstehend, erreiche ich, dass die Abbildung auf einer Seite ist und die caption auf der nächsten folgt. Aber leider ohne label, was nicht gut ist.

\begin{floatingfigure}[p]
\centering
\includegraphics[width=\textwidth]{images/lozenges.jpg}
\caption{Ultramylonitic shear zones in the field:\\
\small blabla...}\normalsize
\label{fig:2}
\end{floatingfigure}

Kann ich es irgendwie erzwingen, dass floatingfigures 'gelabelt' werden? So wie meine figures und tables?

\makeatletter \@addtoreset{figure}{section}
\renewcommand{\thefigure}{\thesection.\arabic{figu re}}
\@addtoreset{table}{section}
\renewcommand{\thetable}{\thesection.\arabic{table }}
\makeatother

Habe schon überall nachdeguckt, aber mir fällt nichts ein. Bin für jede Hilfe dankbar!

sommerfee
28-07-2007, 08:43
Hallo Sarah,



Sobald ich \usepackage{floatftl} einfüge, wird mir die Abbildung nicht angezeigt. Das scheint also nicht zu funktionieren. Weiss nicht wieso.

Was genau heißt "wird nicht angezeigt", gibt es Warnungen oder Fehlermeldungen? Was genau hast du versucht?



Mit \usepackage{float} und der Abbildung wie untenstehend, erreiche ich, dass die Abbildung auf einer Seite ist und die caption auf der nächsten folgt.

Was hat das float-Paket damit zu tun? Ich sehe bei deinem Beispiel keinen aktiven Gebrauch dieses Paketes.



Kann ich es irgendwie erzwingen, dass floatingfigures 'gelabelt' werden? So wie meine figures und tables?

Wie schon geschrieben: Normalerweise ist dies automatisch der Fall. Wenn es bei dir nicht so ist, mußt du uns ein lauffähiges(!) Beispiel geben, so daß wir dein Problem nachvollziehen und untersuchen können. Ansonsten sind wir lediglich auf unsere Kristallkugel angewiesen.

Dein letztes Beispiel war nicht lauffähig und hatte auch weder das floatflt-Paket, noch das fltpage-Paket eingebunden. Ich muß auch gestehen, nicht einmal ansatzweise die Zusammenhänge zu kapieren. Es ging um das Problem, caption und Abbildung zu trennen. Was hat jetzt das float oder das floatfig bzw. floatflt-Paket mit diesem Problem zu tun?

Lese dir doch bitte mal folgende Artikel durch:

http://www.minimalbeispiel.de
http://lugbz.org/documents/smart-questions_de.html (BTW: Danke localghost für diesen Link, finde die Seite sehr gut)

Liebe Grüße,
Axel

P.S.: Eine allerletzte Idee habe ich aber auch so noch: Hast du eventuell ein \restylefloat{figure} in deinem Dokument drin? Wenn ja: Rauswerfen und schauen, ob es dann besser geht.

zarathustra79
28-07-2007, 12:40
Hi Axel,

danke für deine Geduld!


Was genau heißt "wird nicht angezeigt", gibt es Warnungen oder Fehlermeldungen? Was genau hast du versucht?

Nein, es kommen keine Fehlermeldungen, die Abbildung wird im pdf einfach nicht angezeigt.


Was hat das float-Paket damit zu tun? Ich sehe bei deinem Beispiel keinen aktiven Gebrauch dieses Paketes.

Du hast recht, hat nichts damit zu tun, habe es rausgenommen. Bin, wie gesagt, totaler Anfänger und nicht wirklich vertraut mit den ganzen Paketen. Sorry!


Wenn es bei dir nicht so ist, mußt du uns ein lauffähiges(!) Beispiel geben, so daß wir dein Problem nachvollziehen und untersuchen können.

Ich hoffe, ich habe es diesmal richtig gemacht. Habe es probiert und bei mir läuft es und das Problem ist auch erkennbar.


\normalsize \documentclass[12pt,a4paper,twoside]{article}
\usepackage{graphicx}
\makeatletter \@addtoreset{figure}{section}
\renewcommand{\thefigure}{\thesection.\arabic{figu re}}
\makeatother

\begin{document}
\initfloatingfigs
\section{test}
\begin{floatingfigure}[p]
\centering
\includegraphics[width=\textwidth]{images/test.jpg}
\caption{Ultramylonitic shear zones in the field:\\
\small }\normalsize
\label{fig:2}
\end{floatingfigure}

\end{document}


Es ging um das Problem, caption und Abbildung zu trennen.

Richtig, wenn ich die Abbildung als figure einsetze. Wenn ich sie als floatingfigure einsetze, geht es darum, warum sie bei mir nicht nummeriert wird. Tut mir leid wegen der ganzen Verwirrung! Ich hoffe, meine Antwort ist diesmal hilfreicher.

Lieben Gruß,
Sarah

sommerfee
28-07-2007, 19:25
Hallo Sarah,

Dein Beispiel ist (immer noch) nicht lauffähig. Kannst du es wirklich ohne Fehlermeldungen übersetzen?

Lese dir doch bitte mal folgenden Artikel durch:
http://www.minimalbeispiel.de

Es wird bei dir z.B. "floatingfigure" benutzt, aber kein Paket eingebunden, welches es definiert. Ich gehe daher im folgenden davon aus, daß das Paket "floatflt" verwendet werden soll.



\normalsize \documentclass[12pt,a4paper,twoside]{article}

Das gibt bei mir (korrekterweise) eine Fehlermeldung, weil er vor dem \documentclass den Befehl \normalsize noch gar nicht kennt. Das geht bei dir!?



\initfloatingfigs


\initfloatingfigs wird durch das Paket "floatfig" definiert, nicht aber durch "floatflt". Wie ich schon weiter oben schrieb, ist das Paket "floatfig" aber nicht korrekt mit aktuellem LaTeX lauffähig, das kann also gar nicht funktionieren.



\begin{floatingfigure}[p]


"floatingfigure" hat einen zusätzlichen Parameter, nämlich die Breite der Abbildung, der fehlt hier. Stattdessen steht dort ein [p], was dort nicht hingehört.



\includegraphics[width=\textwidth]{images/test.jpg}

Ich bin verwirrt. "floatingfigure" heißt, daß die Abbildung mitten in den Fließtext platziert werden soll, mit einer vorgebenen Breite. Was für einen Sinn macht es hier, "width=\textwidth" zu setzen? Warum dann überhaupt die "floatingfigure"?



\caption{Ultramylonitic shear zones in the field:\\
\small }\normalsize

Wozu ist das "\\ \small" und "\normalsize" hier?

Was willst du überhaupt erreichen, warum die "floatingfigure"? Und was hat das mit der Eingangsfrage zu tun?

Verwirrt,
Axel

zarathustra79
28-07-2007, 21:09
Hi Axel,

ich will dich wirklich nicht ärgern und habe mir auch Mühe gegeben, alles so zu machen, dass du was damit anfangen kannst.
http://www.minimalbeispiel.de habe ich mir durchgelesen, aber ehrlich gesagt, habe ich nur gesehen,dass ich ne Ausgabe bekomme und nicht die Fehlermeldungen beachtet (dachte halt sie seien nicht wichtig,da Ausgabe ja funktioniert).

So isses ohne Fehler:


\documentclass[12pt,a4paper,twoside]{article}
\usepackage{graphicx}
\usepackage{fltpage}
\makeatletter \@addtoreset{figure}{section}
\renewcommand{\thefigure}{\thesection.\arabic{figu re}}
\makeatother

\begin{document}

\section{test}
\begin{figure}
\centering
\includegraphics[width=\textwidth]{images/lozenges.jpg}
\caption{Ultramylonitic shear zones in the field}
\label{fig:2}
\end{figure}

\end{document}

Aber das Problem ist das gleiche: label und caption nicht auf nächster Seite.


Ich bin verwirrt. "floatingfigure" heißt, daß die Abbildung mitten in den Fließtext platziert werden soll, mit einer vorgebenen Breite. Was für einen Sinn macht es hier, "width=\textwidth" zu setzen? Warum dann überhaupt die "floatingfigure"?

Das ist richtig, aber komischerweise bekomme ich mit floatingfigure die caption auf die nächste Seite. Wieso weiss ich nicht, aber für mich war das schonmal ein Fortschritt. Es soll keine floatingfigure sein, aber damit komme ich dem erwünschten Ergebnis näher, nur das das label fehlt. Aber damit kommen natürlich auch wieder Fehlermeldungen.

Nur mit figure und fltpage werden sowohl label als auch caption in der Ausgabe verschluckt und nicht auf die nächste Seite gerückt. Du hattest mir ja zu dem fltpage-Paket geraten, aber damit komme ich nicht weiter.

Ich hoffe, du bist wieder entwirrt, aber ich hab halt auf gut Glück rumprobiert.
Es geht immer noch um das anfänglich erwähnte Problem.

Wie immer, vielen Dank!

Gruss, Sarah

sommerfee
29-07-2007, 11:20
Hallo Sarah,



Aber das Problem ist das gleiche: label und caption nicht auf nächster Seite.

In dem Beispiel wird ja auch wieder die Umgebung "figure" verwendet, die sich nunmal so verhält, wie sich "figure" verhält, daran ändert auch das Einbinden des fltpage-Paketes nichts.

Möchte man die caption auf die vorherige oder nächste Seite, so muß man das fltpage-Paket einbinden und statt "figure" die Umgebung "FPfigure" benutzen. So steht es auch in der Anleitung zum fltpage-Paket. Eine deutsche Einführung in das Paket (und in viele andere Pakete) ist im Buch "LaTeX Begleiter" zu finden.

Liebe Grüße,
Axel

zarathustra79
29-07-2007, 11:54
Es funktioniert! Dankeschöööööön!

Habe auf jeden Fall gelernt, wie ich Fragen in Foren posten muss :)

Vielen Dank und lieben Gruss,

Sarah