mdframed 环境中的段落缩进

mdframed 环境中的段落缩进

我正在使用该mdframed包并定义了自己的环境。但似乎段落缩进在环境中不起作用mdframed

我使用了settings选项来mdframed设置 parindent,但似乎不起作用。但是,当我明确添加 时\setlength{\parindent}{\defparindent},这是一个相当丑陋的解决方案,它也会将第一行缩进一点。所以无论如何,这整件事都不对劲。

我怎样才能告诉我的singleframed环境在其内部进行设置\parindent

mdframed 家长

\documentclass{article}

%\usepackage{lipsum}

\usepackage[framemethod=tikz,%
innerleftmargin=\parindent,%
skipabove=0.6\baselineskip,%
skipbelow=0.6\baselineskip,%
innertopmargin=0.4\baselineskip,%
innerbottommargin=0.4\baselineskip]{mdframed}

\newlength{\defparindent}
\setlength{\defparindent}{\parindent}

% The singleframed environment
\newmdenv[linewidth=0.4pt,%
linecolor=black,%
backgroundcolor=white,%
settings={\setlength{\parindent}{\defparindent}}]{singleframed}

\begin{document}

\begin{singleframed}
qwerty

qwerty
\end{singleframed}

\begin{singleframed}
\setlength{\parindent}{\defparindent}
qwerty

qwerty
\end{singleframed}

\end{document}

答案1

我无法使用 提供的设置mdframed。所以我只是定义了一个新环境。我认为要更改它,mdframed您需要修补包内部。无论如何,此解决方案在增加空格的情况下没有问题。

\documentclass{article}

%\usepackage{lipsum}

\usepackage[framemethod=tikz,%
innerleftmargin=\parindent,%
skipabove=0.6\baselineskip,%
skipbelow=0.6\baselineskip,%
innertopmargin=0.4\baselineskip,%
innerbottommargin=0.4\baselineskip]{mdframed}

\newlength{\defparindent}
\setlength{\defparindent}{\parindent}

% The singleframed environment
\newmdenv[linewidth=0.4pt,%
linecolor=black,%
backgroundcolor=white]{singleframed}

\newenvironment*{singleframedindent}{\begin{singleframed}\setlength{\parindent}{\defparindent}\ignorespaces}{\end{singleframed}}
\begin{document}



    \begin{singleframedindent}
    qwerty\\
    qwerty

    qwerty
    \end{singleframedindent}


\end{document}

结果是: 在此处输入图片描述

如果您执行以下操作,则示例中的空间不会有任何问题:

\begin{singleframed}
\setlength{\parindent}{\defparindent}%
qwerty

qwerty
\end{singleframed}

后面的新行setlength是导致出现额外空格的原因。使用注释标签则不会出现任何问题。

答案2

当前版本github(今天上传到 CTAN)您将获得示例的以下输出: 在此处输入图片描述

相关内容