为什么 thmtools 和 mdframed 不能与 parskip 配合使用

为什么 thmtools 和 mdframed 不能与 parskip 配合使用

我有以下 MWE:

    %!TEX TS-program = XeLaTeX
%!TEX encoding = UTF-8 Unicode


% DEFINITIONS ===================================================
\documentclass[
    12pt,
    a4paper,
    twoside,
    headings=normal,
    titlepage=true
]{scrreprt}


\usepackage[centertags]{amsmath}
\usepackage[framemethod=TikZ]{mdframed}
\usepackage{amsthm}
\usepackage{thmtools}

\usepackage{lipsum}


\declaretheoremstyle[
    headfont=\bfseries, 
    notebraces={[}{]},
    bodyfont=\normalfont\itshape,
    headpunct={},
    postheadspace=\newline,
    postheadhook={\textcolor{red}{\rule[.6ex]{\linewidth}{0.4pt}}\\},
    spacebelow=0,
    spaceabove=0,
    mdframed={
        linecolor=red, 
        outerlinewidth=3pt,
            innertopmargin=0pt,
            roundcorner=5pt, 
            innerbottommargin=0pt, 
            skipabove=-\parskip, 
            skipbelow=0 } 
]{myFramedDefinitionStyle}%

\declaretheorem[
    style=myFramedDefinitionStyle,
    name=Definition,
    numberwithin=chapter
]{example1}

% Basic Command
\ExplSyntaxOn
    \NewDocumentEnvironment{example} { o o }
     {%
      \IfNoValueTF{#1} {\begin{example1}}{ \begin{example1}[#1] }%                                 
      \IfNoValueTF{#2} {}{\label{#2}}%
     }%
     {%
      \end{example1}%
     }%
\ExplSyntaxOff


\begin{document}
\setlength{\parskip}{5mm}
\lipsum[1]
\begin{example}
asdasd
\end{example}
\lipsum[1]
\begin{example}
asdasd
\end{example}
\end{document}  

这导致了这个输出,我真的在问自己做错了什么?为什么 parksip 会弄乱这些框?还有来自关联没有帮助?有人知道为什么这个带有 thmtools 的 mdframed 表现如此糟糕吗?

多谢! :-)!!

答案1

我认为您的问题在于您拼写parskipparsep。也就是说,如果您将 的四个实例更改\parsep为四个\parskips ,那么它似乎可以按预期工作(或至少更好)。

编辑后添加: 现在 (在 内mdframed) 有一个负值skipabove,因此它与上一段重叠似乎是合理的。尝试skipabove=2\parskip或类似的东西。

相关内容