PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Abstand float Umgebung



cecile
25-05-2008, 10:06
Hallo!

Ich setze meine Abbildung, Tabellen und Karten jeweils in eine float-Umgebung. Allerdings ist der Abstand zur Begrenzungslinie nach unten immer wesentlich größer als nach oben, obwohl ich den gleichen Abstand eingestellt habe. Oder vielleicht auch nicht....!??

Hier mein Minibeispiel:


\documentclass[a4paper,
12 pt,
DIV10,
oneside, %einseitiges Dokument
%halfparskip, %Abstand zwischen den Absätzen (halbe Zeile)
smallheadings, %Größe der Überschriften verkleinern
liststotoc, %Verzeichnisse im Inhaltsverzeichnis aufführen
bibtotoc, %Literaturverzeichnis im Inhaltsverzeichnis aufführen
pointlessnumbers,
tocleft]{scrbook} %mit tocleft kann das Einrücken im inhaltsverzeichnis vermieden werden.

%Packete:
\usepackage[a4paper,right=3cm,left=2.5cm,top=2.5cm,bottom=3cm]{geometry}
\usepackage{setspace}

%Zusätzliche Packete
\usepackage[automark, headsepline, ilines]{scrpage2}

\frenchspacing
% Eingabe von Umlauten
\usepackage[latin1]{inputenc}
\usepackage{cite}
% Verwenden von T1 Fonts
\usepackage[T1]{fontenc}

\usepackage{units}
\usepackage{amsmath,amssymb,amstext}
\onehalfspacing
\setlength{\parindent}{0pt}
\setlength{\parskip}{3pt}


\usepackage{float}
% Definiert den Gleitumgebungs-Stil "Linien"
\makeatletter
\newcommand\fs@Linien{\fs@plain
% \@fs@pre = Vor der Abbildung
\def\@fs@pre{}%
% \@fs@mid = Zwischen Beschriftung und Inhalt
\def\@fs@mid{%
%\vspace{\abovecaptionskip}% %{mit \vspace{5pt} Abstand einstellen, der nur für Abbildungen und Karten gilt
\setlength{\abovecaptionskip}{6mm} %Abstand gilt für alle \caption gilt, nicht nur für Abbildungen und Karten
\hrule height 0.3pt\relax
\vspace{10pt}}%
% \@fs@post = Nach der Abbildung
\def\@fs@post{%
\vspace{10pt}%
\hrule height 0.3pt\relax
\ifx\@Quelle\@undefined \else
\vspace{2mm}{\scriptsize Quelle: \@Quelle\par}%
\global\let\@Quelle\@undefined
\fi}%
\let\@fs@iftopcapt\iftrue
% Quellenhinweise unter Abbildungen und Tabellen
\newcommand\Quelle[1]{\@bsphack\gdef\@Quelle{##1}\@esphack}%
}
\makeatother

%Definiert "figure" um, so daß der Stil "Linien" verwendet wird
\floatstyle{Linien}
\restylefloat{figure}
\restylefloat{table}
%Definiert zusätzliche Float-Umgebung für verwendete Karten
\floatstyle{Linien}
\newfloat{Karte}{htb}{loM}[chapter]
\newfloat{Abkuerzungen}{loA}
\newfloat{Anlage}{htb}{loAn}


\usepackage[font=small,labelfont=bf,singlelinecheck=off]{caption}

\addto\captionsngerman{% %schreibt statt Abbildung und Tabelle Abb. und Tab.
\renewcommand{\figurename}{Abb.}%
\renewcommand{\tablename}{Tab.}%
}
\usepackage{url}
\usepackage{graphicx}
\usepackage{color}
\usepackage{enumitem}
\usepackage{pdfpages}

\begin{document}

Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
\begin{table}[htbp]
\centering
\caption{Erhebungsumfang, Befragungszeitraum- und standorte in den Befragungsstädten}
\centering
%\includegraphics[width=\textwidth]{bilder/befragungsstandorte.png}
\label{befragungsstandorte}
\Quelle{Eigene Darstellung 2008.}
\end{table}
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text

\end{document}

Wisst ihr, woran das liegen könnte?
Vielen Dank,
Verena



P.S.: Die Auflösung ist wegen der max. Dateigröße so schlecht.

Sabrina.Dankers
25-05-2008, 10:30
Hallo,

ich hab zwar noch nicht rausgefunden, warum das so ist, aber es liegt nicht an deiner Definition. Wenn du statt des Bildes mal einfach Text in die Umgebung setzt, dann siehst du, dass der Abstand oben und unten gleich ist. Es hängt also irgendwie mit \includegraphics zusammen.

Sabrina.Dankers
25-05-2008, 10:37
Hallo,

ich weiß zwar nicht warum das so ist, aber wenn du nach \includegraphics noch \par\vspace{-\parskip} einfügst, dann stimmt der Abstand.

LG Sabrina

cecile
25-05-2008, 10:37
Hallo Sabrina,

danke für deinen Hinweis. Allerdings ist die Grafik genau an den Rändern abgeschnitten. Ich habe nämlich auch erst gedacht, dass es daran liegt...

Grüße
Verena

Sabrina.Dankers
25-05-2008, 10:42
Hallo nochmal,

wenn du die Zeilenumbrüche weglässt und alles so einfügst:



\begin{table}[htbp]
\centering
\caption{Erhebungsumfang, Befragungszeitraum- und standorte in den Befragungsstädten}
\centering
\includegraphics[width=\textwidth]{}\label{befragungsstandorte}\Quelle{Eigene Darstellung 2008.}
\end{table}


dann stimmen die Abstände auch. Es scheint also irgendwas mit den Befehlen \label und \Quelle zu tun zu haben. Du kannst auch Alternativ, wenn du der Übersichtlichkeit halber die Zeilenumbrüche machst, das Ganze so schreiben:



\begin{table}[htbp]
\centering
\caption{Erhebungsumfang, Befragungszeitraum- und standorte in den Befragungsstädten}
\centering
\includegraphics[width=\textwidth]{}%
\label{befragungsstandorte}%
\Quelle{Eigene Darstellung 2008.}
\end{table}

cecile
25-05-2008, 10:43
Hallo Sabrina!

Da haben sich wohl eben unsere Antworten überschnitten! :-)

VIELEN VIELEN DANK. Auf die Idee wäre ich nicht gekommen. Wunderbar. Abstand ist jetzt oben und unten gleich. Wieder ein kleines Problem gelöst. DANKE.

Grüße
Verena

cecile
25-05-2008, 17:33
Danke noch mal für die Hinweise!!

sommerfee
25-05-2008, 19:45
Das Problem hängt damit zusammen, wie das Float-Paket intern \caption und \label behandelt, hier sind nämlich die Leerzeichen davor und dahinter (leider) ggf. nicht egal - dies ist einer der vielen Designschwächen des float-Paketes.

Und genau dies ist hier der Fall: Die Breite ist schon durch das Bild ausgeschöpft, dann kommt hinter dem \includegraphics{...} noch ein Leerzeichen, und auch hinter dem \caption{...} steht eines (in Form eines Zeilenumbruches) - folglich macht TeX hier einen Zeilenumbruch, da das float-Paket das \caption{...} nicht zu diesem Zeitpunkt ausführt.

Gruß,
Axel

cecile
22-06-2008, 16:38
Hallo,

ich habe noch einmal eine Nachfrage bezüglich meiner Abbildungen, Tabellen, Karten etc. in der float Umgebung.

Ich würde gerne den Abstand der Abbildungsüberschrift zum Fließtext oberhalb bzw. den Abstand zwischen Quelle und Fließtext darunter verändern, bin mir aber nicht sicher, wie ich das mit "einem Handgriff" erledigen kann.

Bisher fällt mir nur ein \vspace{xpt} vor und nach jeder float-Umgebung zu setzen...
Aber das geht wahrscheinlich eleganter, oder!?

Viele Grüße und schon einmal Danke,
Verena

Stefan_K
22-06-2008, 16:53
Hallo Verena,

dafür könntest Du \intextsep (http://www.weinelt.de/latex/intextsep.html) mittels \setlength verändern.

Viele Grüße,

Stefan

cecile
23-06-2008, 05:53
Hallo Stefan!

Danke für den Hinweis.

Also das plus steht für den Abstand oberhalb und das minus für unterhalb, oder?

Wäre es richtig den Befehl so in die float-Umgebung zu setzen

\usepackage{float}
% Definiert den Gleitumgebungs-Stil "Linien"
\makeatletter
\newcommand\fs@Linien{\fs@plain
% \@fs@pre = Vor der Abbildung
\def\@fs@pre{}%
% \@fs@mid = Zwischen Beschriftung und Inhalt
\def\@fs@mid{%
%\vspace{\abovecaptionskip}% %{mit \vspace{5pt} Abstand einstellen, der nur für Abbildungen und Karten gilt
\setlength{\abovecaptionskip}{6mm} %Abstand gilt für alle \caption gilt, nicht nur für Abbildungen und Karten
\setlength{\intextsep}{plus15mm minus15mm}
\hrule height 0.3pt\relax
\vspace{12pt}}%
% \@fs@post = Nach der Abbildung
\def\@fs@post{%
\vspace{12pt}%
\hrule height 0.3pt\relax
\ifx\@Quelle\@undefined \else
\vspace{2mm}{\scriptsize Quelle: \@Quelle\par}%
\global\let\@Quelle\@undefined
\fi}%
\let\@fs@iftopcapt\iftrue
% Quellenhinweise unter Abbildungen und Tabellen
\newcommand\Quelle[1]{\@bsphack\gdef\@Quelle{##1}\@esphack}%
}
\makeatother

Da ändert sich bei mir nicht wirklich etwas.
Grüße
Verena

Stefan_K
23-06-2008, 11:05
Hallo Verena,

das ist nicht so, plus und minus stehen für Dehnbarkeit und Stauchbarkeit des elastischen Maßes: im Beispiel von 10mm plus3mm minus2mm wird ein Abstand von 10mm oben und unten bestimmt, der um 3mm gedehnt und um 2mm gestaucht werden kann, wenn LaTeX vertikal etwas ausgleichen möchte, d.h. der Abstand darf zwischen 8mm und 13mm variieren. Das eben ist nur ein Beispiel. Du kannst einen Wert ohne plus bzw. minus setzen, dann ist er unveränderlich. Ich finde es nützlich, ein bisschen Elastizität im Dokument zu haben, so können die Seiten besser ausgenutzt bzw. ausgeglichen werden.

Viele Grüße,

Stefan

cecile
23-06-2008, 15:01
Vielen Dank, Stefan. Da weiß ich wieder ein bisschen mehr Bescheid. :-)

sommerfee
24-06-2008, 07:17
Wäre es richtig den Befehl so in die float-Umgebung zu setzen

Nein, der muß normal in den Dokumentenvorspann.

cecile
25-06-2008, 07:02
Danke! Jetzt tut sich mit dem Abstand auch etwas! :-)