Inkonsistente Abstände mit der Parskip-Option von KOMA-Skript und amsthm

Inkonsistente Abstände mit der Parskip-Option von KOMA-Skript und amsthm

Dieses Problem ähneltFrage 25346, die vorgeschlagene Lösung behebt mein Problem jedoch nicht.

\documentclass[parskip=full]{scrreprt}

\usepackage{amsmath, amsthm}

\theoremstyle{definition}
\newtheorem{definition}{Definition}[chapter]

\begin{document}

Lorem ipsum dolor sit amet, consectetur adipiscing elit.

\begin{definition} 
In luctus mattis felis ac tristique.
\end{definition}

Nunc vulputate lectus at eros vehicula.

Aliquam fermentum eu justo in lobortis. 
\end{document}

erzeugt inkonsistente Abstände:


Bildbeschreibung hier eingeben


Hinzufügen

\begingroup
    \makeatletter
    \@for\theoremstyle:=definition,remark,plain\do{%
        \expandafter\g@addto@macro\csname th@\theoremstyle\endcsname{%
            \addtolength\thm@preskip\parskip
            }%
        }
\endgroup

zur Präambel, wie vorgeschlagen inFrage 25346produziert


Bildbeschreibung hier eingeben


aber dieser Platz ist jetzt deutlich größer als der Absatzsprung. Ich möchte, dass der Text-zu-Theorem-Sprung in der Größe mit dem Paraskip identisch ist. Danke!

Antwort1

Ihr Code ergibt im Wesentlichen zwei \parskips vor und nach der Definition. Vor dem Theorem können Sie den Abstand auf setzen, \parskipindem Sie verwenden \setlength, anstatt \addtolengthin der Anpassung von \thm@preskip. Denn nach dem Theorem ist die relevante Größe \thm@postskip, aber diese muss auf Null gesetzt werden, da sowieso ein kommt \parskip:

Beispielausgabe

\documentclass[parskip=full]{scrreprt}

\usepackage{amsmath, amsthm}

\begingroup
    \makeatletter
    \@for\theoremstyle:=definition,remark,plain\do{%
        \expandafter\g@addto@macro\csname th@\theoremstyle\endcsname{%
            \setlength\thm@preskip\parskip
            \setlength\thm@postskip{0pt}
            }%
        }
\endgroup

\theoremstyle{definition}
\newtheorem{definition}{Definition}[chapter]

\begin{document}
\show\definition

Lorem ipsum dolor sit amet, consectetur adipiscing elit.

\begin{definition} 
In luctus mattis felis ac tristique.
\end{definition}

Nunc vulputate lectus at eros vehicula.

Aliquam fermentum eu justo in lobortis. 

\end{document}

verwandte Informationen