Captionbreite (auf Bildbreite) setzen

Tabellen und Grafiken erstellen und anordnen


Alex_C
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: So 23. Mär 2014, 21:03

Captionbreite (auf Bildbreite) setzen

Beitrag von Alex_C »

Hallo Forum,

total simple Angelegenheit - denke ich - hab aber noch kein Lösung gefunden:
die Captions unter den Bilder in meinem Dokument sind alle gleich breit (vlt 5cm oder so). Z.T. sind die captions sehr lang was mit unter zu viel vertikalen Platz kostet.

Hier mein Haupdokument:
\documentclass[a4paper,12pt,oneside,DIV12]{scrreprt}

\usepackage[ngerman, english]{babel} 

%Mathematischer Formelsatz
\usepackage{amsmath} % WICHTIG

%Bilder
\usepackage{graphicx}% Paket zum Eindbinden von Graphiken
\graphicspath{{images/}}% beim Einbinden von Bildern muss nicht der ganze Pfad eingegeben werden
\usepackage{subfigure} % um Bilder nebeneinander platzieren zu k�nnen
%\usepackage[justification=centering]{caption} % bilder caption mittig
\usepackage{float} % um bilder genau platieren zu können
\usepackage{caption}

%Verzeichnisse
\usepackage[printonlyused]{acronym}
Bilder binde ich folgendermaßen ein:
\begin{figure}[H]
  \centering
  \begin{minipage}{.5\linewidth}
  \setlength{\abovecaptionskip}{5pt}
  \noindent
\makebox[\textwidth]{ % verwende ich damit das Bild mittig ist
  \includegraphics[scale=1]{bild.eps}} % scale=1 o.ä. wichtig für meine Arbeit
  \caption{laaaaaaaaaaaaaaaaaaaaaaaaaaaaang.}
  \label{fig:label}
  \end{minipage}
\end{figure}
Man muss doch irgendwo die Breite der Caption einstellen können, oder? Entweder auf einen festen Wert (z.B. 8 cm) oder an die Breite der Bilder angepasst.

Danke schonmal!

Grüße Alex

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Warum bastelst du die Minipage da rein? Benötigst du diese wirklich? Gleiches gilt für das Paket float.
\documentclass[a4paper,12pt,oneside,DIV12]{scrreprt}
\usepackage[ngerman, english]{babel}

%\usepackage{graphicx}% Paket zum Eindbinden von Graphiken
%\graphicspath{{images/}}
%\usepackage{subfigure} %Das Paket ist veraltet, nutze lieber subcaption
%\usepackage[justification=centering]{caption} % bilder caption mittig
%\usepackage{float} %Lass das mal lieber, das bringt dir keine Punkte
\usepackage{caption}
\usepackage{blindtext}

%\usepackage[printonlyused]{acronym} 

\begin{document}
\begin{figure}[ht]
  \centering
  \fbox{
  \begin{minipage}{.5\linewidth}
  \setlength{\abovecaptionskip}{5pt} %Sowas solltest du global festlegen
  \noindent
\makebox[\textwidth]{ % verwende ich damit das Bild mittig ist %Warum?
	\rule{\linewidth}{5cm}
}
  \caption{\blindtext.}
  \label{fig:label}
  \end{minipage}}
\end{figure} 
\blindtext[2]

\begin{figure}%kein optionales Argument, freies Gleiten
	\centering %Wenn du alle zentrierst, solltest du das
%	global festlegen
	\rule{.7\textwidth}{7cm}
	\caption[Beschriftung im LOF]{\blindtext}
	\label{fig:eineindeutigesLabel}
\end{figure}

\blindtext

\begin{figure}
	\centering 
	\rule{.7\textwidth}{7cm}
	\caption{kurze Beschriftung}
\end{figure}
\end{document}
Im code sind ein paar Anmerkungen, wenn du dazu noch fragen hast, dann sag einfach Bescheid.
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Bitte schau dir mal den Unterschied zwischen \textwidth und \linewidth an. Mit \makebox[\textwidth] {...} stellst du dem Bild und der Beschriftung ausdrücklich die gesamte Textbreite zur Verfügung. Dann macht es keinen Sinn der Minipage für 0.5\linewidth zu zuweisen.
Eine Möglichkeit, die Bilder genau an der Stelle einzubinden, an der sie im Quelltext erscheinen ist:
\documentclass{scrreprt}
\usepackage{blindtext}
\begin{document}
\blindtext
\begin{center}
  \begin{minipage}{8cm}
  \centering
    \rule{\linewidth}{1cm}% statt Bild
    \captionof{figure}{\blindtext}
  \end{minipage}
\end{center}
\end{document}
Dann ist die Beschriftung genau so breit, wie die umgebende Minipage.

Du kannst aber auch mit
\setcapwidth[c]{8cm}
die Breite aller Beschriftungen vorgeben.

Gruß
Elke

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

Alex_C
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: So 23. Mär 2014, 21:03

Beitrag von Alex_C »

Merci! :D

Antworten