PDA

View Full Version : zweizeilige caption...hängend und gesamt zentriert



Snowman
31-05-2005, 12:32
Hallo, ich weis das Thema wurde schon mal behandelt, aber nicht zu meiner Zufriedenheit. Ich habe zwei Probleme.

1.
Ich habe eine sehr lange Bildunterschrift mit einem manuellen Zeilenumbruch.


\begin{figure}[htbp]
\centering
\includegraphics[width=14.5cm]{Abb/HWSK-B-1.jpg}
\caption[
Gekürzte Bildunterschrift für das Abb.-Verzeichnis
]
{
Hier steht leider eine nicht zu kürzende lange Bildunterschrift mit Zeilenumbruch\\
(Quelle: \cite{HWSK}, 2003, bearbeitet)
}
\label{HWSK-B-1}
\end{figure}

In meiner Preambel steht


\usepackage[hang]{caption2}

Nun wird aber die Bildunterschrift linksbündig am Bild ausgerichtet und die Quelle bündig unter "Hier steht [...]".
Wenn ich nun "hang" durch "center" ersetze, wird sie zwar unter dem Bild schön zentriert aber die Quelle in der zweiten Zeile leider auch.
Ich hätte aber gerne das die erste Zeile zentriert unter dem Bild erscheint und die zweite Zeile (also die Quelle) bündig unter "Hier steht [...]" gesetzt wird.

Ich habe auch schon versucht mit Hilfe dieser Abbildungsbox...


\newlength{\Abbildungsbreite}
\newcommand{\Abbildung}[1]{%
\settowidth{\Abbildungsbreite}{#1}%
\setcapwidth[c]{\Abbildungsbreite}%
#1
\setcapindent{3em}
}
\newsavebox{\Abbildungsbox}
\newenvironment{AbbildungSetztCaptionBreite}{%
\begin{lrbox}{\Abbildungsbox}%
}{%
\end{lrbox}%
\global\setbox\Abbildungsbox=\box\Abbildungsbox%
\aftergroup\SetzeAbbildungsbox%
}
\newcommand{\SetzeAbbildungsbox}{%
\Abbildung{\usebox{\Abbildungsbox}}}

das Problem zu lösen, und zwar in der Form:


\begin{figure}[htbp]
\centering
\begin{AbbildungSetztCaptionBreite}
\includegraphics[width=14.5cm]{Abb/HWSK-B-1.jpg}
\end{AbbildungSetztCaptionBreite}
\caption[
Gekürzte Bildunterschrift für das Abb.-Verzeichnis
]
{
Hier steht leider eine nicht zu kürzende lange Bildunterschrift mit Zeilenumbruch\\
(Quelle: \cite{HWSK}, 2003, bearbeitet)
}
\label{HWSK-B-1}
\end{figure}

Und in der Preambel steht nun:


\usepackage[center]{caption2}

Dies brachte aber auch nicht den gewünschten Erfolg.
Vielleicht weis ja jemannd weiter

Und 2.

Bei sehr kurzen Bildunterschriften, funktioniert der manuelle Zeilenumbruch nicht mehr, anscheinent wenn die zweite Zeile länger ist als die Erste, weder mit "\\" noch mit "\newline" und schon gar nicht wenn sie mit "\protect" geschützt werden.
Woran kann das liegen? Wenn ich die erste Zeile länger mache als die Zweite, mit "\qquad", geht es.
Das kann doch aber keine saubere Lösung sein

Danke für Eure Hilfe

Snowman
02-06-2005, 09:22
hmm scheint keiner ne idee zu haben

pospiech
02-06-2005, 09:31
Warum willst du die erste Zeile zentriert haben, aber die folgenden nicht mehr ? Das erscheint mir vollkommen unlogisch.

Abgesehen davon ist caption2 veraltet und 'caption' in Version 3 die aktuelle Version.

Matthias

Snowman
04-06-2005, 14:55
Hallo...
vielleicht habe ich mich falsch ausgetrückt. In meiner Arbeit muss die Quellenangabe immer in die zweite Zeile der Bild- bzw. Tabellenunterschrift, bündig unter "Hier [..]" (im Beispiel) sehen und die erste Zeile der caption soll mittig unter der Abb. bzw Tab. stehen....so z.B.

Abb1:Hier steht eine lange Bildunterschrift

und hier die zweite Zeile

Vielleicht hat ja jehmannd ja eine Lösung..

Nebuchadneza
24-06-2005, 18:29
Ich schreibe gerade an meiner Diplomarbeit und stehe vor dem gleichen Problem. Ich möchte die obere Zeile zentriert haben und die nachstehende Quellen-Zeile soll linksbündig sein, zusammen mit dem Text darüber (ohne Abbildung). genau wie du es beschrieben hast

Hast du mittlerweile eine Lösung gefunden?

Snowman
24-06-2005, 18:49
hallo...leider habe ich bis jetzt noch keine möglichkeit gefunden, die das problem löst...werde diese aber posten sobald es der fall ist...habe aber wenig hoffnung...hatte direkt markus kohm angeschrieben und nur einen hinweis auf die doku von caption erhalten, die dieses problem aber nicht löst...zumindestens hab ich nichts gefunden...

Nebuchadneza
24-06-2005, 20:41
Ich habe gerade mal ein bisschen mit tabellen experimentiert. Ich bin zwar der Lösung ein wenig näher gekommen, aber ich habe noch ein Problem.

Also der Gedanke ist folgender: Man nehme eine Tabelle mit 3 Spalten. Die Tabelle erstreckt sich über die ganze Breite. Der Caption-Inhalt steht in der mittleren Spalte. Diese Spalte passt ihre größe dynamisch an den Inhalt an. Die andern beiden Zellen an den äußeren Enden puffern den verbleibenden Platz und teilen ihn gleichmäßig auf, sodass die mittlere Spalte auch wirklich in der Mitte sitzt.

So weit so gut, nur bekomme ich das nicht hin. Das tabularx - Paket hat dafür den Spaltentyp "X", um restlichen Platz aufzuteilen. Wenn ich jetzt 3 Spalten mache, die alle vom Typ "X" sind, dann bekomme ich drei gleichgroße Spalten. Das sieht dann so aus:


\newcommand{\bildcite}[4]{
\begin{figure}[htb]
\begin{center}
\includegraphics{img/#1.png}\\
\begin {tabularx}{\linewidth}{|X|X|X|}
test & \caption{\mbox{#2}\newline
\footnotesize{\mbox{#4}}} & test
\end{tabularx}
\label{#3}
\end{center}
\end{figure}}

(die Spaltenlinien hab ich nur zur Kontrolle)

wenn ich aber statt "X|X|X" "|X|c|X|", nehme, was ja genau meinen Wünschen entsprechen müsste, hagelt es Fehler. Das verstehe ich nicht. :confused:

superuke
06-01-2006, 13:43
Hallo,

vielleicht hilft Dir dieser Post weiter:

http://www.mrunix.de/forums/showthread.php?t=42405&highlight=caption

Grüße

superuke

neighbour
07-01-2006, 17:03
Hatte dasselbe Problem und der Link von Superuke hilft weiter! Danke!

Einfach mit dem caption-Paket arbeiten, das bietet alle geforderten Optionen...

1of1
03-12-2009, 22:33
Hallo zusammen!

Der Link von Superuke hilft ja nur bezüglich des Zeilenumbruchs... wie schaut's mit der Orientierung der zweiten Zeile bei "Format = hang" aus? Die soll nicht zentriert unter der oberen Zeile stehen, sondern quasi auch hängend...

Hier ist ein lauffähiges Minimalbeispiel:


\documentclass[a5paper, 10pt, parskip, final, DIV=calc]{scrreprt}

\usepackage{ngerman}
\usepackage[ngerman]{babel}

\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}

\usepackage{graphicx}

\usepackage[font=footnotesize, textfont=footnotesize, labelfont={footnotesize,bf}, format=hang, parskip=1ex]{caption}

\renewcommand{\captionfont}{\footnotesize}


\begin{document}

\begin{figure}[!hht]
\footnotesize
\centering
\includegraphics[width=\textwidth]{Test}
\caption{Analyse der Lebenszyklusabsicherung. Durchschnittliche Anzahl an Werkstattfällen.}{MDR = 0,85.}
\end{figure}


\end{document}


Und noch ein Bild, was ich meine... das MDR = 0,85 soll nach vorne, ebenfalls hängend! :confused:

Bin leider hilflos... :( vielen Dank für eure Hilfe!!
LG aus München,
Flo

sommerfee
05-12-2009, 08:37
\usepackage{ngerman}
\usepackage[ngerman]{babel}


Am besten immer nur eine der beiden Methoden verwenden, manche Pakete können sonst durcheinander kommen. \usepackage[ngerman]{babel} reicht also hier.


\renewcommand{\captionfont}{\footnotesize}

Die Zeile ist überflüssig, da ja schon "font=footnotesize" weiter oben angegeben wurde.


\caption{Analyse der Lebenszyklusabsicherung. Durchschnittliche Anzahl an Werkstattfällen.}{MDR = 0,85.}

\caption hat keine zwei Argumente, das "MDR =0,85." wird also außerhalb der \caption und damit durch das \centering weiter vorne zentriert gesetzt. Schreibe


\caption{Analyse der Lebenszyklusabsicherung. Durchschnittliche Anzahl an Werkstattfällen.\\MDR = 0,85.}
stattdessen.

Liebe Grüße,
Axel

1of1
07-12-2009, 15:41
Hallo Alex und hallo Forum!

Super, vielen lieben Dank! Muss zugeben, dass ich mich fast ein wenig geschämt habe nach deiner Antwort... wie Schuppen von den Augen... :)

Ganz gelöst ist mein Problem noch nicht. Es gibt noch Ärger mit "hang" und "justification = centering".

Hier mein lauffähiges Minimalbeispiel:


\documentclass[a5paper, 10pt, parskip, final, DIV=calc]{scrreprt}

\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx}


%\usepackage[font=footnotesize, textfont=footnotesize, labelfont={footnotesize,bf}, format=hang, parskip=1ex, justification = centering, singlelinecheck = false]{caption}
\usepackage[font=footnotesize, textfont=footnotesize, labelfont={footnotesize,bf}, format=hang, parskip=1ex, singlelinecheck = false]{caption}


\begin{document}

\begin{figure}[!hht]
\footnotesize
\centering
\includegraphics[width=0.8\textwidth]{Test}
\caption[Fälle von Vernetzungskompatibilität.]{Fälle von Vernetzungskompatibilität. \newline Quelle:~bla.}
\end{figure}

\end{document}


Er soll diese (einzeilige!) Überschrift mit dem manuellen (!) Zeilenumbruch "hängend" setzen und trotzdem alles zentrieren - aber gesamthaft. Heißt: Darstellung wie ohne "justification = centering", aber trotzdem zentriert?! :confused:
Siehe die Bilder unten... "hang_ohne_centering" aber dennoch zentriert unter der Abbildung wäre gewünscht... :confused:

Lieben Dank wie immer für eure wirklich super-qualifizierten Antworten!
Schöne Grüße aus München,
Flo

1of1
08-12-2009, 20:28
Hat keiner eine Idee, wie das funktionieren könnte? Ich hab bisher leider nix gefunden und müsste morgen eigentlich beim Prof. antanzen... :o
Bin euch wirklich dankbar!!

Liebe Grüße aus München,
Flo

u_fischer
09-12-2009, 10:35
Gib eine Breite manuell vor:

\captionsetup{width=0.61\textwidth}
\caption[Fälle von Vernetzungskompatibilität.]{Fälle von Vernetzungskompatibilität. \newline Quelle:~bla.}

1of1
09-12-2009, 11:27
Ulrike... du bist die Beste!! ;)

Danke!! :)