Sie sind hier

caption-Problem: Text wird in minipage-Umgebung auseinander gezogen!

Hallo alle zusammen,

ich brauche eure Hilfe!

Ich schreibe meine erste Arbeit in Latex und bin bis jetzt glücklich mit dieser Entscheidung.
Meine Vorabrecherchen brachten mich zum KOMA-Script, bin immer noch glücklich :-).
Es gibt nur leider ein paar kleine Wermutstropfen, die ihr hoffentlich beseitigen könnt.

Hier ist mein main-file. Falls ihr große Schnitzer entdeckt, bitte melden. Danke!

\documentclass[12pt,BCOR7mm,DIVcalc,smallheadings,plainheadsepline]{scrreprt}

%verhindert das der footnote-zähler beim Kapitelwechsel zurückgesetzt wird
\usepackage{remreset}
\makeatletter\@removefromreset{footnote}{chapter}\makeatother

\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel} %deutsche Rechtschreibung
\usepackage[dvips]{color}
\usepackage{framed}%Einrahmen von Texten mit der shaded-Umgebung

%Kopfzeile
\usepackage[automark,headsepline]{scrpage2}
\pagestyle{scrheadings}
\clearscrheadfoot
\setheadsepline{.4pt}
\ohead[\headmark]{\headmark} %durch Angabe des optionalen Parameters ändert man scrplain mit!
\ofoot[\pagemark]{\pagemark}

%in Verbindung mit onehalfspacing liefert 1.5-fachen Zeilenabstand
\usepackage{setspace}
\onehalfspacing
\typearea[current]{last}

%Tabellen
\usepackage{array}
\usepackage{longtable}
\usepackage{multirow} %zwei Zellen in einer Tabelle verbinden
\usepackage{graphicx} %Grafik-Paket
\usepackage{float}
\usepackage{floatflt}

%Formeln
\usepackage{amsmath}
\usepackage{amssymb}

\setlength{\parindent}{0em} %Die erste Zeile eines Absatzes wird nicht eingerückt
\setlength{\parskip}{2.0ex plus 1.0ex minus 0.5ex} %Definiert den Abstand zum nächsten Absatz, mit Toleranzen!

%Rotation von Text, Bilder, Tabellen, etc.
\usepackage{rotating}

%stellt die Überschriften-Schrift auf eine
\setkomafont{sectioning}{\normalfont \normalcolor \bfseries}

\begin{document}
\input{titel}
\pagenumbering{Roman}
\bibliographystyle{plain}
\tableofcontents
\cleardoublepage
\listoftables
\cleardoublepage
\listoffigures
\cleardoublepage
\pagenumbering{arabic}
\input{zusammenfassung}
\input{einleitung_dummie}
\input{methodik}
\input{material}
\input{ergebnisse}
\bibliography{Literaturverzeichnis}
\end{document}

Ich habe folgende Probleme:

1.
Ich habe zwei Bilder mit der minipage-Umgebung auf gleicher Höhe in mein Dokument eingebaut.
Es zieht mir aber leider die Bildunterschriften auseinander. Ich bekomme immer die Fehlermeldung "underfull \hbox" und es sieht auch nicht toll aus (Abbildung___2.1:___blabla\).
setcapindent hat das Problem nur verlagert, aber nicht behoben.

\begin{figure}[hbt]
\setcapindent{0em}
% \centering
\begin{minipage}[b]{0.45\textwidth}
\centering
\includegraphics[height=0.2\textheight]{images/kraftsensor}
\caption{Kraftsensor KD40s \cite{ME}}
\end{minipage}\hfill
\label{fig:kraftsensor}
\begin{minipage}[b]{0.45\textwidth}
\centering
\includegraphics[height=0.4\textwidth]{images/DMS}
\caption{Aufbau eines Dehnmessstreifens}
\end{minipage}\hfill
\label{fig:DMS}
\end{figure}

2.
Abbildung in Abb. ändern
versucht mit: renewcommand{\figurename}{Abb.}

Ich hoffe ihr könnt mir helfen! Vielen Dank im voraus!

Freundliche Grüße

Sven

PS: Falls diese Frage schon einmal hier gestellt wurde, ich habe sie nicht gefunden! Und ich habe hier schon viel gefunden was mir weitergeholfen hat!

Bild von Markus Kohm

Vorab: Was du das beigefügt hast, ist kein vollständiges Minimalbeispiel, denn es ist so nicht lauffähig. Zum einen verfüge ich nicht über die eingebundenen Grafiken (die ersetzt man in einem Minimalbeispiel am besten durch \rule-Anweisungen), zum anderen verfüge ich nicht über die ganzen per \input eingeladenen Dateien. Ein vollständiges Beispiel würde also auf die \input-Anweisungen verzichten und stattdessen eine passende figure-Umgebung direkt enthalten. Minimal würde es dann dadurch, dass du alle für das Problem unerheblichen Dinge rauswirfst. Dazu muss man auch kein LaTeX-Experte sein, das probiert man einfach aus.

Dein Problem mit den Bildunterschriften ist dasselbe Problem, das du hättest, wenn du mit schmalen Spalten im Blocksatz arbeiten würdest. TeX findet keine passenden Trennstellen und keine Möglichkeit den Absatz in dieser geringen Breite gut zu umbrechen. Eine mögliche Lösung wäre, die Bildunterschriften nicht im Blocksatz zu setzen. Das kann man mit \addtokomafont{caption}{\raggedright} erreichen.

Hallo Markus,

vielen Dank für die schnellen Antworten!

Das mit dem Minimalbeispiel war mein Fehler, sorry! Werde ich im Laufe der Woche korregieren.

Die "raggedright"-Anweisung brachte eine Verbesserung, ist aber leider noch sub-optimal.

Den Fehler mit "parskip" habe ich direkt behoben.

\documentclass[12pt,BCOR7mm,DIVcalc,smallheadings,plainheadsepline,halfparskip]{scrreprt}

Das Problem als Anfänger ist, man sucht sich mit Google und deutschen Schlagwörtern die passende Hilfe.

Die Änderung von "Abbildung" in "Abb." konnte ich Dank deines Tipps ebenfalls direkt durchführen.

\addto\captionsngerman{
\renewcommand{\figurename}{Abb.}
\renewcommand{\tablename}{Tab.}
}

Freundliche Grüße

Sven

Dieses Minimalbeispiel verdeutlicht hoffentlich mein Problem!?

\documentclass[12pt,BCOR7mm,DIVcalc,smallheadings,plainheadsepline,halfparskip]{scrreprt}

%verhindert das der footnote-zähler beim Kapitelwechsel zurückgesetzt wird
\usepackage{remreset}
\makeatletter\@removefromreset{footnote}{chapter}\makeatother

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

%deutsche Rechtschreibung
\usepackage[ngerman]{babel}
\addto\captionsngerman{
\renewcommand{\figurename}{Abb.} %Abbildung in Abb. ändern
\renewcommand{\tablename}{Tab.}}

%Einrahmen von Texten mit der shaded-Umgebung
\usepackage[dvips]{color}
\usepackage{framed}

\usepackage[automark,headsepline]{scrpage2}
\pagestyle{scrheadings}
\clearscrheadfoot
\setheadsepline{.4pt}
\ohead[\headmark]{\headmark}
\ofoot[\pagemark]{\pagemark}

\usepackage{setspace}
\onehalfspacing
\typearea[current]{last}

%Tabellen
\usepackage{array}
\usepackage{longtable}
\usepackage{multirow} %zwei Zellen in einer Tabelle verbinden
\usepackage{graphicx} %Grafik-Paket
\usepackage{float}
\usepackage{floatflt}

%Blocksatz in caption-Umgebung abschalten
%\addtokomafont{caption}{\raggedright}

\begin{document}
\begin{figure}[hbt]
\setcapindent{0em}
% \centering
\begin{minipage}[t]{0.45\textwidth}
\centering
\rule[0cm]{4cm}{6cm}
\caption{Branche mit $H_2 O$-Heizung; Schnittdarstellung}
\label{fig:mikroheizer}
\end{minipage}\hfill
\begin{minipage}[t]{0.45\textwidth}
\centering
\rule[0cm]{4cm}{6cm}
\caption{Branche mit Platin-Mikroheizer; Explosionsdarstellung}
\end{minipage}
\label{fig:branchenmodell}
\end{figure}

\end{document}

Freundliche Grüße

Sven

Bild von Markus Kohm

Dein Problem hat neben dem bereits erwähnten Problem mit Umbruch bei schmalen Spalten noch etwas damit zu tun, dass TeX Wörter mit Bindestrich normalerweise nur am Bindestrich trennt. Das ist eigentlich typografisch auch korrekt. In der Anleitung zu Babel findet sich aber auch die Möglichkeit, einen Bindestrich einzugeben, der auch Trennungen im Teil nach dem Bindestrich ermöglicht. Ändert man die \caption-Anweisungen in:

\caption{Branche mit H\textsubscript{2}O"=Heizung; Schnittdarstellung}

und

\caption{Branche mit Platin"=Mikroheizer; Explosionsdarstellung}

hat man dann auch zwei hässliche Trennungen aber dafür keine hässliche Löcher mehr. Zusammen mit der \raggedright-Lösung hast du damit zwei alternative Lösungsmöglichkeiten. Eine dritte Möglichkeit, wäre geringfügige Umformulierung, etwas das Einfügen eines "Eine" o. ä. am Anfang der Bildunterschrift. Eine vierte Möglichkeit wäre, die Breite leicht zu ändern. Verkleinert man etwa die Breite der minipage jeweils auf .4\textwidth ist das Problem beseitigt. Ich würde mir dann aber auch noch überlegen, ob es nicht sinnvoll wäre, die beiden nicht ganz an den Rand zu rücken, sondern beispielsweise 1 em rechts und links zusätzlich einzurücken.

Bild von Markus Kohm

Wie man bei Verwendung von babel Dinge wie \figurename korrekt umdefiniert, steht einerseits in der Babel-Anleitung, andererseits in der De-TeX-FAQ.

Bild von Markus Kohm

Dass man \parskip etc. besser nicht einfach so umdefiniert, ist in l2tabu zu lesen. KOMA-Script bietet für Absatzabstand statt Absatzeinzug speziell Optionen. Wenn einem die dort gebotenen Absatzabstände nicht passen, sollte man dennoch eine solche Option zum Einsatz bringen und erst danach \parskip anpassen. KOMA-Script weiß dann wenigstens, dass man mit Absatzabstand arbeitet und kann passende Maßnahmen ergreifen.

Comments for "caption-Problem: Text wird in minipage-Umgebung auseinander gezogen!" abonnieren