框架、列表和 xcolor 在一起存在错误

框架、列表和 xcolor 在一起存在错误

framed当使用、listings和包的组合时xcolor,会导致一个奇怪的错误,我无法修复。

问题是,当一个盒子(用包装framed和制成fcolorbox)在页面分页之前包含列表时,该区块的其余部分在下一页上显示为空白。此外,第一页上的区块不再有框架。

在此处输入图片描述

如果我使用 fbox 而不是 fcolorbox,就不会发生这种情况。

最小的例子如下:

    \documentclass[a4paper,12pt]{scrartcl}

\usepackage[english]{babel}
\usepackage{blindtext}

\usepackage{framed}
\usepackage{listings}
\usepackage{xcolor}

\lstnewenvironment{python}{\lstset{language=python}}{}

\renewcommand*{\FrameCommand}{%
\setlength{\fboxrule}{\FrameRule}\setlength{\fboxsep}{\FrameSep}%
\fcolorbox{black}{white}}

\begin{document}
\blindtext
\blindtext
\blindtext

\begin{framed}{Block}
\blindtext

Foo

\blindtext

\begin{python}
def f(x):
    foo
\end{python}
THIS NEVER APPEARS
\blindtext
\end{framed}
End of block
\end{document}

我正在寻找任何一种解决方法,不一定是完整的解决方案。

答案1

添加\color{black}after\end{python}解决了问题(但会出现颜色堆栈警告)。似乎不知何故,“白色”背景也变成了环境之后的文本颜色python

编辑

使用框架。 一个简单的

\begin{mdframed}[skipabove=\topskip,skipbelow=\topskip]
...
\end{mdframed}

生成您想要的内容。环境可通过多种方式进行定制。

相关内容