使用 tcolorbox 时出现不必要的缩进

使用 tcolorbox 时出现不必要的缩进

当我使用 创建框时tcolorbox,我在两个地方得到了不必要的缩进:一次是在标题之前,其次是在第一个段落的位置(所有以下段落都没有所需的缩进)。

在此处输入图片描述

我将每个颜色盒包装到一个note环境中,并将其各个部分包装到单独的field环境中,以便稍后能够解析 .tex 文件并将其导入 Anki。

颜色盒/环境定义的代码:

\usepackage[skins, most]{tcolorbox}
\usepackage{titlesec}
\usepackage{xifthen}

\tcbset{default/.style={
            enhanced,
            breakable,
            arc=0pt,
            outer arc=0pt,
            frame hidden,
            fontupper=\normalsize\bfseries\boldmath,
            fontlower=\small,
            coltext=mediumgray!50!black,
            colback=mediumgray!20,
            parbox=false,
            segmentation hidden,
            grow to left by=-0.5cm,
            grow to right by=-0.5cm,
        }
}

\tcbset{definition/.style={default,
            coltext=grapefruit!50!black,
            colback=grapefruit!25
        }
}

\newcounter{notefield}
\newenvironment{note}[1][default]
{
    \titleformat*{\section}{\small\bfseries}
    \titleformat*{\subsection}{\small\bfseries}
    \titleformat*{\subsubsection}{\small\bfseries}

    \setcounter{notefield}{0}
    \begin{tcolorbox}[#1]
        }
        {
    \end{tcolorbox}
}

\newenvironment{field}{}{}

\BeforeBeginEnvironment{field}{
    \stepcounter{notefield}
    \ifnum\value{notefield}=2
        \tcblower
    \fi
}

生成框的代码:

\begin{note}[definition]
    \begin{field}
        Def.: Körper
    \end{field}
    \begin{field}
        Ein kommutativer unitärer Ring, der nicht der Nullring ist, ist ein Körper, wenn in ihm jedes von Null verschiedene Element ein Inverses bezüglich der Multiplikation besitzt.
    \end{field}
\end{note}

我使用该包parskip(带有配置parfill)来抑制缩进,我假设它可能与 tcolorboxes 冲突。

答案1

您的定义中有大量未受保护的行尾,它们的作用类似于空格:

\documentclass{article}

\usepackage[skins, most]{tcolorbox}
\usepackage{titlesec}
\usepackage{xifthen}

\tcbset{default/.style={
            enhanced,
            breakable,
            arc=0pt,
            outer arc=0pt,
            frame hidden,
            fontupper=\normalsize\bfseries\boldmath,
            fontlower=\small,
            coltext=gray!50!black,
            colback=gray!20,
            parbox=false,
            segmentation hidden,
            grow to left by=-0.5cm,
            grow to right by=-0.5cm,
        }
}

\tcbset{definition/.style={default,
            coltext=green!50!black,
            colback=green!25
        }
}

\newcounter{notefield}
\newenvironment{note}[1][default]
{%
    \titleformat*{\section}{\small\bfseries}%
    \titleformat*{\subsection}{\small\bfseries}%
    \titleformat*{\subsubsection}{\small\bfseries}%
%
    \setcounter{notefield}{0}%
    \begin{tcolorbox}[#1]%
        }
        {%
    \end{tcolorbox}%
}

\newenvironment{field}{}{}

\BeforeBeginEnvironment{field}{%
    \stepcounter{notefield}%
    \ifnum\value{notefield}=2
        \tcblower%
    \fi%
}

\begin{document}

\begin{note}[definition]
    \begin{field}%
        Def.: Körper
    \end{field}%
    \begin{field}%
        Ein kommutativer unitärer Ring, der nicht der Nullring ist, ist ein Körper, wenn in ihm jedes von Null verschiedene Element ein Inverses bezüglich der Multiplikation besitzt.
    \end{field}%
\end{note}

\end{document}

在此处输入图片描述

相关内容