Sie sind hier

addmargin vertikaler Abstand

Hallo!

ich möchte einzelne Absätze ähnlich der quote-Umgebung einrücken.

addmargin scheint genau das richtige zu sein, und so etwas wie

xxxxxxxxxxxxxxxxxxxxxxxxxx

\begin{addmargin}{0.05\textwidth}
xxxxxxxxxxxxxxxxxxxxxx
\end{addmargin}

xxxxxxxxxxxxxxxxxxxxxxxxxx

funktioniert relativ gut und ergibt im Endeffekt Absätze, die so aussehen:

xxxxxxxxxxxxxxxxxxxxxxxxxx

xxxxxxxxxxxxxxxxxxxxxx

xxxxxxxxxxxxxxxxxxxxxxxxxx

Das Problem dabei: VOR und teilweise auch nach der addmargin-Umgebung wird ein vertikaler Abstand eingefügt! Und das, obwohl im koma-Skript guide ausdrücklich steht: "Es wird auch kein zusätzlicher vertikaler Abstand vor und nach der Umgebung eingefügt.".

Ich möchte keinen zusätzlichen vertikalen Abstand haben, sondern einfach nur den ganz normalen Abstand zwischen Absätzen. Es soll sich also nur die Einrückung ändern (also die Textbreite).

Wie kann man das in Latex am besten umsetzen?

Danke und viele Grüße!
Abel

Bild von Markus Kohm

Das fügt nämlich keinen zusätzlichen vertikalen Abstand ein:

\documentclass{scrartcl}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\begin{addmargin}{.05\textwidth}
  \lipsum[2]
\end{addmargin}
\lipsum[3]
\end{document}

Das gilt auch dann noch, wenn man mit ganz unnormalem Absatzabstand arbeitet:

\documentclass[parskip]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{blindtext}
\begin{document}
\blindtext
\begin{addmargin}{.05\textwidth}
  \blindtext
\end{addmargin}
\blindtext
 
\blindtext
\end{document}

q. e. d.

Problematisch wird es allenfalls, falls man selbst noch einen Absatz einfügt. Dann hat man nämlich ggf. zwei Absatzabstände (naja, eigentlich liegt es wohl eher an \partopsep, aber das ist eine andere Geschichte, die ein anderes Mal erzählt werden soll).

Vielen Dank für das Feedback!

Schade, dass man im Text überall dort wo man addmargin verwendet auf das Hinzufügen von Absätzen aufpassen muss. Gerade wenn immer wieder einzelne Absätze eingerückt werden, sieht der Quelltext nicht gerade hübsch aus, wenn man auf die Zeilenumbrüche verzichtet bzw. sich daran erinnern muss, diese auszukommentieren.

Ich habe jetzt aber ein anderes Problem entdeckt. Ich habe für Beispiele eine eigene Umgebung definiert, die amsthm verwendet und folgendermaßen aussieht:

\newenvironment{example}[1]{%
\begin{addmargin}{0.05\textwidth}
\begin{exampletheorem}
\label{ex:#1}
}{%
\end{exampletheorem}
\end{addmargin}
}

Selbst ohne Absatz vor und nach der "example"-Umgebung gibt es einen recht großen vertikalen Abstand VOR der Umgebung.

- Entfernt man die addmargin-Befehle, so sehen die vertikalen Abstände von der theorem-Umgebung i.O. aus.
- Entfernt man die theorem-Umgebung, so sehen die vertikalen Abstände von der addmargin-Umgebung i.O. aus.

Any ideas??? Vielleicht kann man die Beispiel-Umgebung ganz anders gestalten?? Ich brauche letzten Endes nur die Einrückung sowie das Wort "Example" gefolgt von einem Kapitelweisen Zähler. Zum Beispiel für das 4. Beispiel in Kapitel 3 sollte es so aussehen:

Example 3.4: blablabalbalbalbalbla

Danke !
Gruß
Abel

Bild von Markus Kohm

Hier noch einmal den Link, den ich schon in meinem letzten Beitrag mit voller Absicht gesetzt hatte!

Ansonsten musst Du ohnehin aufpassen, wo Du Absätze verwendest und solltest grundsätzlich nur dort welche einfügen, wo sie auch hin gehören!

Folgendes Beispiel zeigt was passiert:

\documentclass[parskip]{scrbook}
\usepackage[ngerman]{babel}
\usepackage{blindtext}
\usepackage{amsthm}
\begin{document}
 
\newtheorem{exampletheorem}{Example}[chapter]
\newenvironment{example1}{%
	\begin{addmargin}{0.05\textwidth}
		\begin{exampletheorem}
}{%
		\end{exampletheorem}
	\end{addmargin}
}
 
\newenvironment{example2}{%
		\begin{exampletheorem}
}{%
		\end{exampletheorem}
}
 
\newenvironment{example3}{%
	\begin{addmargin}{0.05\textwidth}
}{%
	\end{addmargin}
}
 
\blindtext
 
\blindtext
\begin{example1}{1cm}
\blindtext
\end{example1}
\blindtext
 
\newpage
 
\blindtext
 
\blindtext
\begin{example2}{1cm}
\blindtext
\end{example2}
\blindtext
 
\newpage
 
\blindtext
 
\blindtext
\begin{example3}{1cm}
\blindtext
\end{example3}
\blindtext
 
\end{document}
  • Auf Seite 1 sieht man, wie zu viel vertikaler Abstand VOR dem Beispiel eingefügt wird.
  • Auf Seite 2 sieht man wie ich es gerne hätte (bis auf die fehlende Einrückung).
  • Auf Seite 3 sieht man, dass addmargin ohne die theorem-Umgebung keinen vertikalen Abstand einfügt.

Es ist mir nicht klar, woher dieser vertikale Abstand kommt. Mit \vspace{} lässt sich sicherlich alles fummelig flicken, aber das scheint mir nicht sehr sinnvoll zu sein.

Viele Grüße
Abel

Jetzt habe ich doch noch eine Möglichkeit gefunden, um das Problem umzugehen.

-> Man vertausche einfach die Reihenfolge der Umgebungen und passe dann nur noch die Einrückung in der theorem-Umgebung an. Also addmargin IN die theorem-Umgebung einbetten und nicht anders rum.

Kleines Beispiel:

\documentclass[parskip]{scrbook}
\usepackage[ngerman]{babel}
\usepackage{blindtext}
\usepackage{amsthm}
\newtheoremstyle{exampletheorem}{\baselineskip}{0pt}{\normalfont}{0.05\textwidth}{\normalfont}{: }{-0.05\textwidth}{}
\theoremstyle{exampletheorem}
\begin{document}
 
\newtheorem{exampletheorem}{Example}[chapter]
\newenvironment{example}{%
	\begin{exampletheorem}
		\begin{addmargin}{0.05\textwidth}
}{%
		\end{addmargin}
	\end{exampletheorem}
}
 
\blindtext
 
\blindtext
\begin{example}
\blindtext
\end{example}
\blindtext
 
\end{document}
Comments for "addmargin vertikaler Abstand" abonnieren