PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem: Referenzen auf Bilder in minipage



schorschi6
30-08-2007, 13:47
Hallo!

Ich benutze eine minipage, um zwei Bilder nebeneinander darzustellen:



\begin{figure}[h]
\begin{minipage}[b]{0.3\textwidth}
\centering
\label{fig:mcabrowser}
\includegraphics[width=0.3\textwidth]{figures/MCABrowser.png}
\caption{MCA Browser}
% Bild bekommt Nummer: 1.1
\end{minipage}\hfill
\begin{minipage}[b]{0.7\textwidth}
\centering
\label{fig:mcagui}
\includegraphics[width=0.7\textwidth]{figures/MCAGUI_speed.png}
\caption{MCA GUI}
% Bild bekommt Nummer: 1.2
\end{minipage}
\end{figure}


Nach diesem Code kommen im Laufe des Dokuments noch weitere Bilder, wie z.B. dieses hier:


\begin{figure}[t]
\centering
\label{fig:MCAGUI_test}
\includegraphics[width=\linewidth]{figures/MCAGUI_test.png}
\caption{MCA GUI: Function Test}
% Bild bekommt Nummer: 1.3
\end{figure}


Die Nummerierung stimmt sowohl im Abbildungsverzeichnis als auch unter den Bildern selbst.
ABER:
Wenn ich auf ein Bild, welches nach der minipage kommt, verweise mittels \ref also z.B.
\ref{fig:MCAGUI_test}, dann stimmt die Nummer NICHT. Ich erhalte dann
als Nummer 1.1 anstatt 1.3. Keine Ahnung warum... Er scheint hier die Bilder in den minipages zu ignorieren.

Weiß jemand Rat?

Ach noch was:
Wenn ich unter den minipages weiterschreibe, dann bricht er die Seite nicht richtig um. Er schreibt dann über den unteren Rand hinaus.

sommerfee
30-08-2007, 13:54
\label immer nach \caption.

(Siehe auch DANTE-FAQ und Bischis l2picfaq: http://www.mrunix.de/forums/showthread.php?t=41452)

schorschi6
30-08-2007, 14:07
\label immer nach \caption.

(Siehe auch DANTE-FAQ und Bischis l2picfaq: http://www.mrunix.de/forums/showthread.php?t=41452)

Ich probiers. Daran liegst aber vermutlich nicht. Ich mach das bewußt (also quasi vorsätzlich :) ). Der Grund ist, dass ich das package hyperref benutze. Wenn ich label nach caption setze und jemand klickt auf eine Referenz, dann springt er UNTER das Bild (es ist dann nicht direkt sichtbar)

sommerfee
30-08-2007, 14:16
Ich probiers. Daran liegst aber vermutlich nicht.

Sorry, wenn ich jetzt etwas oberlehrerhaft daherkomme: Doch :cool:

Es gibt Befehle, die Referenzen erzeugen, mit \label verknüpft man quasi diese interne Referenz mit einem Namen, so daß man später mit \ref, \autoref etc. darauf zugreifen kann. Es ist ein Irrglaube, daß \label selbst eine Referenz bzw. einen Sprunganker für hyperref setzt.

Die Befehle, die intern Referenzen erzeugen, sind: \chapter, \section, \subsection, ..., \item, ... und eben auch \caption.

Wenn du jetzt ein \label vor \caption setzt, hast du mit dem \label die letzte Referenz vor dem Bild "aufgefangen", was vermutlich \section oder ähnliches sein dürfte. \ref wird dann also als Hyperlink dorthin springen, ferner wird bei \ref die Nummer der \section ausgegeben (und insbesondere nicht die Nummer, die \caption erzeugt).



Der Grund ist, dass ich das package hyperref benutze. Wenn ich label nach caption setze und jemand klickt auf eine Referenz, dann springt er UNTER das Bild (es ist dann nicht direkt sichtbar)

Ja, er springt dann zur \caption, weil hier der Anker gesetzt wurde. Möchte man stattdessen den Anker bei \begin{figure} bzw. \begin{table} setzen (was sinniger ist), muß man hierfür z.Z. zusätzlich das hypcap-Paket einsetzen. (Ab dem 3.9. kann dies auch das caption-Paket.)

Gruß,
Axel

schorschi6
30-08-2007, 14:22
Hast ja recht, jetzt gehts. Danke für den Tip mit hypcap!

Das Problem mit dem falschen Seitenumbruch hab ich aber immer noch. Er denkt, dass er unter den minipages noch eine ganze Seite Platz hat, obwohl der obere Teil bereits belegt ist. Er schreibt dann lustig weiter, sogar die Seitenzahl wird überschrieben...

sommerfee
30-08-2007, 15:27
Das Problem mit dem falschen Seitenumbruch hab ich aber immer noch. Er denkt, dass er unter den minipages noch eine ganze Seite Platz hat, obwohl der obere Teil bereits belegt ist. Er schreibt dann lustig weiter, sogar die Seitenzahl wird überschrieben...

Mir ist nicht ganz klar, wo du den Text hinsetzt. Setzt du ihn direkt unter die minipages, also noch vor das \end{figure}? Wenn ja, dann darf er doch gar keinen Seitenumbruch machen...

Wenn du ihn hingegen nach dem \end{figure} stehen hast, ist das in der Tat sehr merkwürdig. Hast du ein Minimalbeispiel für uns?

Gruß,
Axel