将框架保存在跨越多个页面的 mdframed 框中

将框架保存在跨越多个页面的 mdframed 框中

我过去常常mdframed创建跨越多页的大框,但它们只在页面顶部和底部留下无框的一侧。有办法解决这个问题吗?

\documentclass{article}
\usepackage[demo]{graphicx}% demo option just for the example
\usepackage{blindtext}% demo option just for the example
\usepackage{amsmath}
\usepackage{amssymb} 
\usepackage{natbib}
\usepackage{float}
\usepackage[small]{caption}
\usepackage[usenames,dvipsnames]{xcolor}
\usepackage[xcolor,framemethod=tikz]{mdframed}

\begin{document}
\global\mdfdefinestyle{tag}{%
    roundcorner=5pt,innerlinewidth=2pt,innerlinecolor=RubineRed,%
    middlelinewidth=3pt,middlelinecolor=white,%
    outerlinewidth=2pt,outerlinecolor=Melon,%
    backgroundcolor=Melon!20,%
}
\begin{mdframed}[style=tag]     
\begin{center}
    \blindtext
    \includegraphics[width=\textwidth]{foo}
         \captionof{figure}{This is foo.}
        \label{fig:foo}
    \blindtext
    \includegraphics[width=\textwidth]{foo}
         \captionof{figure}{This is foo2.}
        \label{fig:foo}
    \blindtext
    \blindtext
    \blindtext
\end{center}
Lots of text
\blindtext
\blindtext
\blindtext
\includegraphics[width=\textwidth]{foo}
         \captionof{figure}{This is foo3.}
        \label{fig:foo}
\end{mdframed}

\end{document}

答案1

我想通过对你的序言的一些提示来回答这个问题。

  • \global前面的命令\mdfdefinestyle不需要。我在文档中使用它来定义由提供的组之外的样式showexpl
  • 您加载包xcolor。正如建议的那样,这是最好的方法。如果包xcolor已加载,mdframed将忽略选项xcolor
  • 您可以使用选项在分割框上绘制顶部和底部的线条everyline=true。但是,我认为这样的边框看起来不太好看。

使用以下定义tag

\mdfdefinestyle{tag}{%
    roundcorner=5pt,innerlinewidth=2pt,innerlinecolor=RubineRed,%
    middlelinewidth=3pt,middlelinecolor=white,%
    outerlinewidth=2pt,outerlinecolor=Melon,%
    backgroundcolor=Melon!20,everyline=true%
}

相关内容