PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Bilder im Text... seltsame Anordnung



Huschpuscheldi
12-09-2010, 21:14
Hallo!
Habe etwas ganz mysteriöses entdeckt das ich echt nicht verstehe:

Mein code im Dokument sieht so aus:



\subsubsection{Schwimmer Hebel}
\begin{figure}[htb]
\centering
\includegraphics[width=10cm]{bilder/Schwimmerhebel.jpg}
\caption{Hebel}
\label{Hebel}
\end{figure}
Hier ist Text blah blah

\subsubsection{Schwimmer Gelenk}
\begin{figure}[htb]
\centering
\includegraphics[width=10cm]{bilder/Schwimmergelenk.jpg}
\caption{Gelenk}
\label{Gelenk}
\end{figure}
\blindtext


Soweit so gut.
Es soll also nach der Überschrift das Bild erfolgen, dann der Text.

Was ich jetzt aber nicht verstehe ist, warum beim einfügen des 2ten Bildes zuerst das Bild, dann die Überschrift und dann der Text kommt (Anhang "falsch"). Es ist ja der selbe code wie beim ersten Bild und da ist es so wie es sein soll.
Wenn ich aber jetzt den Text nach dem ersten Bild um eine Zeile verlängere, erscheint das 2te Bild unter der Überschrift, so wie es sein soll (Anhang "richtig").

Ich hoffe das war verständlich formuliert, vllt erklären die Anhänge es besser. Der Unterschied zwischen "falsch" und "richtig" ist nur eine Zeile mehr Text auf der linken Seite.
Kann mir jemand erklären warum eine Zeile mehr oder weniger Text Einfluss auf die Anordnung von Überschrift und Bild in einer anderen subsubsection hat?

voss
12-09-2010, 22:33
Mein code im Dokument sieht so aus:

und der ist wieder mal unvollständig und somit nicht überprüfbar.
Dies hier funktioniert einwandfrei:


\documentclass[ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage{babel,blindtext}
\usepackage[demo]{graphicx}

\begin{document}

\subsubsection{Schwimmer Hebel}
\begin{figure}[htb]
\centering
\includegraphics[width=10cm]{bilder/Schwimmerhebel.jpg}
\caption{Hebel}
\label{Hebel}
\end{figure}
Hier ist Text blah blah

\subsubsection{Schwimmer Gelenk}
\begin{figure}[htb]
\centering
\includegraphics[width=10cm]{bilder/Schwimmergelenk.jpg}
\caption{Gelenk}
\label{Gelenk}
\end{figure}
\blindtext

\end{document}

Herbert

arthur0815
13-09-2010, 00:29
Du bindest deine Abbildung innerhalb einer Gleitumgebung (figure) ein, bei der Latex beim Kompilieren anhand vordefinierter Regeln die Gleitobjekte anordnet. Durch das [htb] gibst du zwar eine Präferenz vor, jedoch kann Latex die Objekte weiterhin beliebig anordnen.
Mit [!htb] werden die Regeln zur Positionierung etwas gelockert, dies sollte in den meisten Fällen ausreichen. Tut es dies nicht, bleiben meines Wissens zwei Möglichkeiten:

Du kannst die Bilder ohne figure-Umgebung einbinden. Dies führt jedoch dazu, dass du statt \caption{Beispieltext} nun \captionof{figure}{Beispieltext} benutzen musst, da \caption nur in float-Umgebungen funktioniert.
Durch das Paket float wird ein neuer Parameter für Gleitobjekte definiert: [H] erzwingt das das Objekt an der aktuellen Position. Dieser Weg sollte nur in Ausnahmefällen gewählt werden, da die freie Positionierung durch Latex nach Regeln für einen optimalen Textfluss durchgeführt wird.

Für eine ausführlichere Antwort verweise ich dich auf folgendes, sehr lesenswertes PDF (ab Seite 15 geht es um die figure-Umgebung): http://tug.ctan.org/tex-archive/info/l2picfaq/german/l2picfaq.pdf

rstuby
13-09-2010, 09:20
Übrigens ist es auffällig, wie oft Anfänger Gleitumgebungen benutzen und sich dann beschweren, dass diese gleiten.
Gibt es irgendwo ein Dokument, dass die meisten Anfänger lesen? Dann könnte man darin etwas Auffälligeres darüber schreiben.
Ich selber habe allerdings zu Anfang gar nicht gewusst, wo man Dokus findet...

Xenara
13-09-2010, 10:30
Oder man macht eine forumsinterne FAQ, mir ist es nämlich auch schon aufgefallen, dass die Frage sehr häufig kommt. Und irgendwann hat man dann auch keine Lust mehr, zu antworten. Da wäre es gut, wenn man auf eine FAQ o.ä. verweisen könnte.
Ich kenne als Anfängerliteratur die Dokumente der Fernuni Hagen, im ersten Teil (ftp://ftp.fernuni-hagen.de/pub/pdf/urz-broschueren/broschueren/a026.pdf) ist das mit den Gleitumgebungen sehr schön beschrieben (Kapitel 23, S. 93), allerdings wird die Variante mit minipage und captionof nicht erwähnt, was ich für ein Manko halte.

voss
13-09-2010, 11:07
Oder man macht eine forumsinterne FAQ, mir ist es nämlich auch schon aufgefallen, dass die Frage sehr häufig kommt. Und irgendwann hat man dann auch keine Lust mehr, zu antworten. Da wäre es gut, wenn man auf eine FAQ o.ä. verweisen könnte.
Ich kenne als Anfängerliteratur die Dokumente der Fernuni Hagen, im ersten Teil (ftp://ftp.fernuni-hagen.de/pub/pdf/urz-broschueren/broschueren/a026.pdf) ist das mit den Gleitumgebungen sehr schön beschrieben (Kapitel 23, S. 93), allerdings wird die Variante mit minipage und captionof nicht erwähnt, was ich für ein Manko halte.

http://projekte.dante.de/DanteFAQ/Gleitumgebungen

Herbert

u_fischer
13-09-2010, 14:15
Da wäre es gut, wenn man auf eine FAQ o.ä. verweisen könnte.

Es steht in der englischen FAQ, in der deutschen bei Dante, hier im Forum in
"Wichtig: How-To: LaTeX und Bilder (l2picfaq.pdf)", in l2kurz.pdf ....

Es gibt sicherlich welche, die die Dokumente und Faqs einfach nicht lesen, das größere Problem ist aber m.E. einfach, dass die Augen über Hinweise auf "Gleitumgebungen" hinweggleiten, solange einem das Konzept "Gleitumgebung" nichts sagt. Man muss einfach mal erfahren haben, dass eine figure-Umgebung abhaut.

Wen es nervt, dass die Frage immer wieder auftaucht: Tröstet euch damit, dass jeder die Frage nur einmal stellt. Sucht einfach einen geeigneten Link, den man schnell posten. Ich nehme gerne die englische Faq (http://www.tex.ac.uk/cgi-bin/texfaq2html?label=floats), weil sie mit dem schönen Satz beginnt:

"Tables and figures have a tendency to surprise, by floating away from where they were specified to appear."

Xenara
13-09-2010, 14:19
Danke für die Hinweise.
Ich habe LaTeX (leider) nicht wirklich strukturiert gelernt, daher weiss ich zwar manche Sachen, aber nicht mehr, woher.

Der Satz in der englischen FAQ ist klasse.

Die Erklärung aus o.g. Doku der Fernuni Hagen ist vielleicht auch nicht schlecht, denn über "wandernde Objekte" stolpert man eher und überliest es nicht so einfach wie "Gleitumgebung".


Bei solchen Abbildungen handelt es sich um sogenannte „wandernde Objekte“ oder
„floating charts“: sie werden nämlich nicht nur automatisch durchnummeriert, sondern man bietet LaTeX damit die Chance, eine Abbildung nach gewissen Regeln frei zu positionieren. Es kann Ihnen also durchaus passieren, dass die Abbildung beim Druck Ihres Dokumentes nicht dort erscheint, wo Sie sie in der Eingabe kodiert haben.Mit Hinblick auf den Seitenumbruch wählt LaTeX einen Platz für die Abbildung, der ein optimales Layout garantiert.

voss
13-09-2010, 14:58
Die Erklärung aus o.g. Doku der Fernuni Hagen ist vielleicht auch nicht schlecht, denn über "wandernde Objekte" stolpert man eher und überliest es nicht so einfach wie "Gleitumgebung".

"Mit Hinblick auf den Seitenumbruch wählt LaTeX einen Platz für die Abbildung, der ein optimales Layout garantiert. "

Damit hat die Anordnung eigentlich nichts zu tun, sondern ausschließlich
mit den vorgegebenen Parametern:
http://projekte.dante.de/DanteFAQ/FloatPlatzierung#FloatParameter

Herbert

Huschpuscheldi
13-09-2010, 20:29
Das Bilder gleiten weiß ich und die l2picfaq hab ich auch gelesen.
Was ich aber nicht verstehe ist warum eine Zeile mehr Text auf der linken Seite im Dokument die Anordnung auf der rechten Seite beeinflusst. Im Anhang "falsch" sieht es so aus als würde das Bild "bilder/Schwimmergelenk.jpg" noch zum vorherigen Kapitel gehören. Es soll aber erst nach der Überschrift "Schwimmergelenk" erscheinen und das lässt sich nicht durch die Parameter [!htb] steuern. Egal was ich als Parameter einsetze Das Bild erscheint immer über der Überschrift "Schwimmergelenk".
Leider lässt sich das nicht mit einem MB erzeugen, sonst hätte ich eins eingestellt.

bischi
13-09-2010, 22:00
Das Bilder gleiten weiß ich und die l2picfaq hab ich auch gelesen.
Nur wenn du das auch willst ;) Sonst halt ohne Gleitumgebung oder mit FloatBarrier arbeiten (vgl l2picfaq :D)



Was ich aber nicht verstehe ist warum eine Zeile mehr Text auf der linken Seite im Dokument die Anordnung auf der rechten Seite beeinflusst.

Weil es halt keinen Platz hat beziehungsweise LaTeX mit den von dir genannten Regeln einen bessern Platz findet :p (so einzelne Zeilen Text oben auf der Seite sind nicht so der Hammer ;)). Wenn du die Reihenfolge beibehalten willst: Floatbarrier!

MfG Bischi

bischi
13-09-2010, 22:02
Gibt es irgendwo ein Dokument, dass die meisten Anfänger lesen?

Naja - genau dafür wurde ja ursprünglich das l2picfaq geschrieben ;) Nur ist das scheinbar noch nicht bei allen angekommen (aber noch prominenter verlinken kann ich es nun wirklich nicht - vielleicht sollte man es jeden neuen Forennutzer zwangslesen lassen :p)

MfG Bischi ;)