PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Zweizeilige Bildunterschrift zentrieren



hoshbad
12-05-2008, 21:23
Hallo zusammen,

meine Bildunterschriften sind immer (erzwungen) zweizeilig, in der ersten Zeile steht die eigentliche Unterschrift und in der zweiten muss die Quelle stehen. Nun probiere ich es seit 2 Stunden mit dem caption-Paket in Version 3 vom 01.04.2008 und scheitere.

Ich schaffe es, den Zeilenumbruch mittels \newline zu erzwingen, dann stimmt jedoch etwas mit der Zentrierung nicht mehr.

Ich habe hier im Forum schon gesucht, auch diesen Thread (http://www.mrunix.de/forums/showthread.php?t=42405&highlight=caption) gefunden, aber anscheinend tritt das Problem dort nicht auf. Die Paketdokumentation habe ich auch komplett gelesen, jedoch ebenso wenig dazu gefunden.

Im Anhang findet ihr das Ergebnis des Minibeispiels und ein Bild, wie es aussehen soll, aber nicht tut.

Hier mein Minibeispiel:

\documentclass[a4paper,12pt]{scrartcl}

\usepackage[paper=a4paper]{geometry}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{type1ec}
\usepackage{graphicx}


\usepackage[format=plain,singlelinecheck=false,justification=c entering,font={small,bf}]{caption}[2008/04/01]

\begin{document}
\begin{figure}[h]
\centering
\includegraphics[width=6cm]{grafiken/test.pdf}
\caption{Foo \newline Bar}
\end{figure}
\end{document}

Ich hoffe, ihr könnt mir helfen. Vielen Dank im Voraus!

Stefan_K
12-05-2008, 22:38
Hallo hoshbad,

in der caption-Dokumentation ist vielleicht ein geeignetes Feature erwähnt, doch die hast Du ja schon gelesen, also schau ich auch nicht nach, mir fällt aber folgende Möglichkeit ein:
\caption[Foo Bar]{{\centering Foo \par} Bar}
Viele Grüße,

Stefan

hoshbad
12-05-2008, 22:59
Guten Abend Stefan,

danke für die schnelle und hilfreiche Antwort. Ich hatte das mit "\par" schon mal gefunden und ausprobiert, allerdings bekam ich dann Fehler. Jetzt habe ich es noch mal probiert (mit einer Pause seit meinem Post) und bekam die gleichen Fehler, habe aber dank dir erkannt, dass es an der mangelnden Kurzform fürs Verzeichnis lag. Das "\par" im Verzeichnis erzeugt den Fehler.

Vielen Dank!

Aber lasse mich bezüglich der Doku von Caption doch bitte nicht im Regen stehen. Ja, ich habe sei einmal von oben bis unten gelesen, natürlich habe ich Optionen die mir unsinnig für mein Problem erscheinen nur überflogen. Von diesem Feature wüsste ich jedoch nichts.

Stefan_K
12-05-2008, 23:12
Hallo hoshbad,

mir fällt grad auch kein Feature von caption dafür ein, daher mein Vorschlag oben. Ich weiß jedoch, dass caption ein Paket mit sehr vielen Features und ausgezeichneter Dokumentation ist, daher meine vermutende Bemerkung, dass sich womöglich etwas passendes finden ließe. Wenn ichs wüsste, hätte ich Dir option und Stelle in der Doku gern gesagt. Hauptsache ist, es funktioniert ;) wenn es direkter mit caption lösbar ist, notiert es vielleicht noch jemand hier. Der Autor des Paketes liest und schreibt ja auch hier mit.

Viele Grüße,

Stefan

sommerfee
13-05-2008, 09:17
Nun probiere ich es seit 2 Stunden mit dem caption-Paket in Version 3 vom 01.04.2008 und scheitere.

Das Problem liegt darin, daß die Justierungs-Kommandos wie \centering etc. zwar \\ passend und funktionierend umdefinieren, aber \newline nicht. \newline ist quasi ein unbeliebtes Kind innerhalb von LaTeX, welches zwar unter normalen Umständen gut (und genauso wie \\) funktioniert, aber ansonsten nicht. Beispiel:



\documentclass[a4paper,12pt]{scrartcl}

\begin{document}
\parbox\linewidth{%
\centering
A \newline B}
\parbox\linewidth{%
\centering
A \\ B}
\end{document}


Die Lösung des Problems besteht also darin, \newline in der \caption durch \\ zu ersetzen:



\documentclass[a4paper,12pt]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[demo]{graphicx}

\usepackage[format=plain,singlelinecheck=false,justification=c entering,font={small,bf}]{caption}[2008/04/01]

\begin{document}
\begin{figure}
\centering
\includegraphics[width=6cm]{grafiken/test.pdf}
\caption{Foo \\ Bar}
\end{figure}
\end{document}


Gruß,
Axel

P.S.: Werde einen passenden Hinweis in die caption-Doku mit aufnehmen, Danke für den Hinweis!

hoshbad
13-05-2008, 09:44
Das versteh ich nicht. Ein "//" war natürlich das erste, was ich versucht habe, liegt ja auch sehr nahe. Das hat nicht funktioniert, ich glaube, es wurde gänzlich ignoriert.

*nachdenk*

Ahh, was sein kann ist, dass ich vorher noch ne ältere Caption-Version hatte und es dort nicht funktionierte. Daher habe ich es vielleicht bei der neuen Version nicht mehr ausprobiert.

Wie dem auch sei, ich danke euch.

sommerfee
13-05-2008, 12:11
Das versteh ich nicht. Ein "//" war natürlich das erste, was ich versucht habe, liegt ja auch sehr nahe. Das hat nicht funktioniert, ich glaube, es wurde gänzlich ignoriert.

Dann war das vermutlich ohne caption-Paket. Denn der Original-Code von LaTeX ignoriert innerhalb von \caption das \\, allerdings nur dann, wenn die Gesamtlänge der Beschriftung theoretisch in eine Zeile passen würde:



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

\begin{document}
\begin{figure}
\caption[]{Eine kurze\\Beschriftung}
\caption[]{Eine lange\\Beschriftung, die genug Text enth"alt, so da"s der Umbruch klappt}
\end{figure}
\end{document}


(Mit caption-Paket zeigt sich dieses inkonsistente Verhalten nicht.)